首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过canRead()和FileNotFoundException ()返回true

通过canRead()和FileNotFoundException ()返回true
EN

Stack Overflow用户
提问于 2013-03-07 14:04:36
回答 2查看 573关注 0票数 0

我这样做,并将一些内容写入此文件。

代码语言:javascript
复制
fileSymbol = new File("D:\\TempFiles\\SymbolFile.xml");
fileSymbol.createNewFile();
prSymbol = new PrintWriter(fileSymbol);
while(//condition goes here){
   prSymbol.write(text);
}

然后我试着从这个文件中读取,

代码语言:javascript
复制
FileReader fr = new FileReader(fileSymbol);
BufferedReader br = new BufferedReader(fr);
String line = br.readLine();

当我尝试运行时,它给出了以下异常

代码语言:javascript
复制
java.io.FileNotFoundException: fileSymbol (The system cannot find the file specified)

当我尝试的时候

代码语言:javascript
复制
fileSymbol.canRead();
fileSymbol.exists();

这两个函数都返回true。

我不明白为什么我得到这个错误,虽然我已经创建了文件。当我手动检查位置时,我能够看到我创建的文件。

附言:我刚刚提供了我的代码的代码片段。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-07 14:22:35

java.io.FileNotFoundException: fileSymbol (系统找不到指定的文件)

如果您准确地转录了该消息,则只能表明您使用的是"fileSymbol"作为文件名,而之前您使用的是"D:\\TempFiles\\SymbolFile.xml"

注意,在为同一文件创建输出流或写入器之前,调用createNewFile()行完全是浪费时间。

票数 3
EN

Stack Overflow用户

发布于 2013-03-07 14:09:24

在读取文件之前添加以下内容

代码语言:javascript
复制
  prSymbol.close();

在close .Reference JavaDoc - close()之前不需要调用flush()

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15264239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档