Java读取相对路径文件怎么读取不了?求助

import java.util.Scanner;

public class ReadData {
public static void main(String[] args) throws Exception {
// Create a File instance
java.io.File file = new java.io.File("scores.txt");

// Create a Scanner for the file
Scanner input = new Scanner(file);

// Read data from a file
while (input.hasNext()) {
String firstName = input.next();
String mi = input.next();
String lastName = input.next();
int score = input.nextInt();
System.out.println(
firstName + " " + mi + " " + lastName + " " + score);
}

// Close the file
input.close();
}
}
文件内容为: John T Smith 90 Erik K Jones 85
源代码如上,文件也放在同一个包里,但编译出错
Exception in thread "main" java.io.FileNotFoundException: scores.txt (系统找不到指定的文件。)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(Unknown Source)
at java.io.FileInputStream.(Unknown Source)
at java.util.Scanner.(Unknown Source)
at Exercise20.ReadDateScanner.main(ReadDateScanner.java:11)

0

5个回答

用ReadData.class.getResourceAsStream("scores.txt")传入scanner

0

FileInputStream fis = null;
InputStreamReader isr = null;
BufferedReader br = null; //用于包装InputStreamReader,提高处理性能。因为BufferedReader有缓冲的,而InputStreamReader没有。
try {
String str = "";
String str1 = "";
fis = new FileInputStream("c:\abc.txt");// FileInputStream
// 从文件系统中的某个文件中获取字节
isr = new InputStreamReader(fis);// InputStreamReader 是字节流通向字符流的桥梁,
br = new BufferedReader(isr);// 从字符输入流中读取文件中的内容,封装了一个new InputStreamReader的对象
while ((str = br.readLine()) != null) {
str1 += str + "\n";
}
// 当读取的一行不为空时,把读到的str的值赋给str1
System.out.println(str1);// 打印出str1

0

读取相对路径不行,那就用绝对路径。

0

你可以把文件从src到你的包下面到处拖拖,没放到一个地方执行以下,就能找出来规律,到底应该放在什么地方,需不需要用./或者/。自己试试印象深刻

0

不同的工具会有细微的差别,比如eclipse与idea。不同的读取方式,也会有区别,下面是一个简单的例子。

1、在Java开发工具的project中使用相对路径
在project中,相对路径的根目录是project的根文件夹,在此就是repathtest文件夹了。
创建文件的写法是:
File f = new File("src/com/lavasoft/res/a.txt");

File f = new File("doc/b.txt");

注意:
路径不以“/”开头;
脱离了IDE环境,这个写法就是错误的,也并非每个IDE都如此,但我见到的都是这样的。

2、通过CLASSPATH读取包内文件
读取包内文件,使用的路径一定是相对的classpath路径,比如a,位于包内,此时可以创建读取a的字节流:
InputStream in = ReadFile.class.getResourceAsStream("/com/lavasoft/res/a.txt");
有了字节流,就能读取到文件内容了。
到底应该放在什么地方,需不需要用./或者/。自己用不同的数据试试,那么自己的印象会更深刻深刻。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
读取java项目相对路径下文件的方法
ResourceBundle 是Java的一个工具类,这样可以读取到src下面名为Appconfig.properties的文件。如果要求包名下的可以这样:ResourceBundle.getBundle("com/app/Appconfig");ResourceBundle resource = ResourceBundle.getBundle("Appconfig");String key =...
java 如何获取当前程序的路径
java 如何获取当前程序的路径System.getProperty("user.dir")
java中使用相对路径读取文件的写法总结 以及getResourceAsStream()
读取文件的写法,相对路径在当前的目录结构中读取test.txt的有三种写法 File file = new File("src/test.txt"); File file = new File(TestRelativePath.class.getResource("/test.txt").getFile()); File file = new File(Thread.currentThread
java在eclipse项目中读取文件时相对路径的问题
path = outputdocnum/output_NLP.txtFile f = new File(path); InputStreamReader isr = new InputStreamReader(new FileInputStream(f), encode);File f = new File(path); bufferedIn = new BufferedReader(new Fil
Java相对路径读取文件
* Java相对路径读取文件* 1、在Java开发工具的project中使用相对路径 在project中,相对路径的根目录是project的根文件夹, 创建文件的写法是: ” File f = new File(“src/com/lavasoft/res/a.txt”); ” File f = new File(“./a.txt”); 如果想在src下创建目录: ”
怎样获取java项目中文件读取的相对路径
这篇分享文章:是我之前在百度经验写的!因为想打造个人博客,所以复制过来,因为博客搬家不能搬进来。我的百度昵称:炼狱天堂ME
java如何通过绝对路径和相对路径读取文件
0x00 前言 当我在写java的数据库连接时,希望通过使用文件的相对路径来读取信息,因为使用绝对路径时在代码移植之后就会出现问题,这不是一个好的方法 0x01 概念 绝对路径:在我们平时使用计算机时要找到需要的文件就必须知道文件的位置,而表示文件的位置的方式就是路径 相对路径:由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系 0x02 java通过绝对路径读取文件 ...
读取相对路径下的.properties文件内容注意事项
1、一般在网上搜的方法都是: public static void main(String[] args) throws IOException { Properties prop = new Properties(); InputStream in = Object.class.getResourceAsStream("uu.properties"); prop.load(in); S...
Java web项目 通过相对路径读取文件
所以一个很重要的启示是: 从java文件里面读入资源文件的时候,是默认从项目目录下开始读取路径的,所以就不需要从包路径下一步一步向上倒退了。 ...
java 中文件的读取File、以及相对路径的问题
一、对于java项目中文件的读取 1、使用System 或是 系统的Properties对象 ①直接是使用 String relativelyPath=System.getProperty("user.dir"); ②使用Properties对象 我们先来遍历一下系统的属性: Properties properties = System.getProperties();
JAVA开发10--加载相对路径下配置文件并读取内容
描述: java开发,使用 FileInputStream 加载 文件,读取文件内容。 在项目文件夹的同目录下,有一个文件夹 config,此文件夹下有一个配置文件 var2.properties; 文件内容如下: YEAR:2016 MONTH:07 DATA_TYPE:OA_ProjectBudget 代码如下: package com.noahark.da
JAVA使用相对路径读取配置文件
JAVA使用相对路径读取配置文件[align=center][/align][size=medium][/size] 在软件开发中经常遇到读取配置文件,以及文件定位问题。今天做个总结。 (一)在java project中的配置文件读取 java project项目的目录结构只有两个src和bin。src中存放的是源文件,bin中存放的是*.class的字节码文件。...
eclipse中读取json配置文件,相对路径不能以斜杠打头。
fileReader = new FileReader("src/json_for_test/netDiagnoseConfigParameter"); BufferedReader bufferedReader = new BufferedReader(fileReader); StringBuffer stringBuffer = new StringBuffer();
java通过相对路径读取properties数据
主要是通过getResourceAsStream方法来实现相对路径的读取,相对路径的意思就是以项目所在路径为基准,让程序知道其在项目的哪个路径下面。
使用File获取resources里面资源文件的相对路径
大概类似这样的目录要在CityService中获取resources中的city.josn可以这样写File file = new File(this.getClass().getResource("/city.josn").getPath());这样就可以用IO打开resources里面的文件了...
linux的相对路径读取文件
在linux系统下,读取的相对路径位置始终以你生成的可执行文件的路径为当前路径,如果你创建了build,再读取,那么需要../need_to_read path,注意一下
java new file 使用相对路径读取文件
1.java project环境,使用java.io用相对路径读取文件的例子:  *目录结构:   DecisionTree             |___src                  |___com.decisiontree.SamplesReader.java             |___resource                  |___train.tx
java中通过相对路径获取文件对象
解析方法一 [code="java"]DocumentBuilder dombuilder=domfac.newDocumentBuilder(); InputStream is=new FileInputStream(ElongHotelsFacadeImpl.class.getResource("/") + "/com/elong/message/Geo_cn.xml")...
java中调用图片音频等文件的相对路径问题
[code="java"] import javax.swing.ImageIcon; import java.awt.Image; import java.awt.Toolkit; import java.io.File; import java.applet.Applet; import java.applet.AudioClip; /** * * Title: 获取资源...
jar包中读取文件系统绝对路径,相对路径,以及jar包内部路径的写法
结论: 1.在jar包代码中要使用操作系统的绝对路径,路径以 / 开始。 2.在jar包代码中使用相对路径,起点是jar所在目录。比如说test.jar所处位置为/opt/test/test.jar,那么你在代码中写相对路径:“pathTest/haha.txt”,那么实际指向的位置为/opt/test/pathTest/haha.txt 3.在jar包代码中使用:InputStream inp...
java读取文件路径的几种方法,java 的Class中获得相对路径,绝对路径的方法
  System.out.println("***********************"); File file = new File("."); System.out.println(file.getAbsolutePath()); // D:\fsoft\nchome_huaxin\. try { System.out.println(file.getC...
java web中读取properties文件时的路径问题
在web开发时,难免会有一些固定的参数,我们一般把这些固定的参数存在properties文件中,然后用的时候要读出来。但经常出现一些错误,找不到相应的路径,所以,今天特地讲一些如何正确获得路径。 首先,我们要将properties文件部署在$app/WEB-INF/classes文件夹里,比如将info.properties文件放在dingding这个web应用下时,该文件所在的路径为$
jar包读取file的时候相对和绝对路径的问题 .
 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等)。在单独运行的时候这些简单的处理当然不会有问题。但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了。看看下面的代码: Java代码   //源代码1:    package  edu.hxraid;    import  java.io.*;    public...
dom4j解析xml相对路径怎么写
(为什么图片不能显示)目录结构及代码如图:1是编译后的目录,2是源码,1中的web1.xml是我新加的文件,然后用dom4j加载配置文件,先用 TestMyServlet.class.getClassLoader() .getResource("cn/itheima/web/servlet1/web1.xml").getPath(); 获取文件路径,成功打印出结果 //1.创建解析器
Qt 通过相对路径读取图片失败
目录结构: 1.可以通过相对路径调用该文件目录下的 fa-solid-900.ttf 以及 qss 文件夹中的文件 2.不能通过相对路径将 player.ico 设置为窗口图标 3.用绝对路径可以调用该目录下的 player.ico 文件 解决方法: 第1步:在该目录的上一级目录下新建一个如:image 第2步:将图片文件都放到image文件夹 调用方式: //...
nodejs读取文件时相对路径的正确写法(使用fs模块)
在开发nodejs中,我们往往需要读取文件或者写入文件,最常用的模块就是fs核心模块。一个最简单的写入文件的代码如下(暂时不考虑回调函数):fs.readFile("./test.txt", function (error, result) {}       该代码的意思就是从当前目录下的test.txt文件中读取数据,然后在result中打印输出。当在我们本地运行该代码应该没什么问题,可以成功执
相对路径获取文件
//获取文件File file = new File(url); //这个获取的是未编译的本地文件 File file = new File("src/main/resources/templates/changeActionRichText/freemarker/ChangeActionRichText.html"); //由于打包后不存在什么src地址,所以不要代码中用上面的方式获取。用下...
C#文件的读取与写入操作及其读取数据处理(注释详尽,相对路径,直接运行,测试成功!)
C#文件的读取与写入操作及其读取数据处理(注释详尽,相对路径,直接运行,测试成功!)
文件读取相对路径的方法。。。。
private static final String template_file_path =  "../../../abc/def/";                        Source xmlSource = new StreamSource(bin);             Source xsltSource = new StreamSource(new File(tem
ClassLoader读取文件的路径
(ClassPath) Web工程:默认是读取WEB-INF/Classes文件下的目录 JAVA工程:Classes文件下的目录 如果直接在src目录下,直接写文件名即可db.properties 否则相对路径,用cn/itcast/utils分割 InputStream in=JdbcUtils.class.getClassLoader().get
Java项目下exe文件的路径问题及运行
如图exe文件路径获取:首先获取当前项目的根目录,然后得到MibBrowser.exe文件的路径:代码如下:File directory = new File("");//参数为空 String courseFile = directory.getCanonicalPath() ; private static final String path= courseFile +"MibBrowser
Java中文件的相对路径与绝对路径
通过这篇博客可以深入理解Java中相对路径与绝对路径的概念,同时对Eclipse和tomcat中的相对路径也做介绍,有助于开发。另外,getPath()、getAbsolutePath()、getCanonicalPath()的区别也做了说明。
Python读取文件夹中指定格式的文件名与相对路径
实现: 1、遍历文件夹,取出jpg格式的图片名称; 2、遍历文件夹,取出jpg格式的图片相对路径。
Java web项目中获取WebRoot绝对目录
具体获取方式: /** * * @return WebRoot目录的绝对路径 */ public static String getWebRootAbsolutePath() { String path = null; String folderPath = Path.class.getProtectionDomain().getCodeSource() ...
相对路径失效,在SpringBoot 项目里面怎么访问绝对地址的文件
  最近遇到了一个这样的问题,因为每次更新Springboot 版本项目到服务器上,用户上传的照片都会落在上个版本中的 tomcat-docbase 文件夹中。这样就不能用域名拼接相对路径的方式访问这些照片了,所以我想到了一个用相对路径映射绝对路径的方式来访问的方法。     不说了,贴代码:   @Configuration public class UploadFileConf...
使用SAXReader读取xml文件时的路径问题
1.xml文件放在WEB-INF下: 2.xml文件放在某个包下: 建议:如果对于路径老是处理不好,提示你的路径获取不到文件,可以用下面的方法: 1.选择你要解析的文件,点击鼠标右键,然后选择Copy Qualified Name就可以获取文件的相对路径 2.然后把项目名去掉即可: ...
java中File的相对路径与绝对路径总结
java web中File的相对路径与绝对路径总结,用于在运行时获取配置文件、动态加载对象等
Spark学习(文件读取路径)
在不同的启动模式下,加载文件时的路径写法是不一样的,对于local模式下,默认就是读取本地文件,而在standlone或者yarn-client,或者cluster模式下,默认读的都是hdfs文件系统,这几种模式下很难读取本地文件(这是很显然的事情,但你可以通过指定节点的文件服务曲线救国)。下面的代码在local模式下有效,在其它模式下无效:var theP1 = sc.textFile("fil
springboot获取相对路径文件夹下静态资源的方法
  今日遇到一个问题:springboot需要获取到一个自定义名称文件夹下的静态资源(图片等),并且文件夹的路径不在classPath下面,而是一个相对路径。   一开始使用修改配置文件的方式: # 配置静态资源访问前缀 spring.mvc.static-path-pattern=*/** # 配置静态资源路径,默认配置失效 spring.resources.static-location...
Qt之文件路径读取问题
将xml文件直接放入同级文件中 利用QFile file("books.xml")读取不到文件 解决方式: 1.写入绝对路径QFile file("D:/lei_project/qtproject/XMLdemo/books.xml");利用qDebug()<<QDir::currentPath();打印出当前路径 路径为:”D:/lei_project/qtproject/build-