从文件读取时出错

时间:2013-04-11 18:43:20

标签: java file-not-found

我正在做一个关于阅读文件的示例。我把一个txt文件放到项目文件夹中并编写了这段代码,但是我得到了异常FileNotFound,当我尝试关闭dataInputStream时,我收到了编译错误(注释掉了行)。我想我搞砸了一切

   String  str=null;
   try {
       FileInputStream fileInputStream=new FileInputStream("myfile.txt");
       DataInputStream dataInputStream=new DataInputStream(fileInputStream);
       BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(dataInputStream));
       str=bufferedReader.readLine();

       } catch (Exception e) {
           System.out.println(e.getMessage());
       }

       System.out.println(str);
       //dataInputStream.close();

3 个答案:

答案 0 :(得分:2)

Java对于相对路径非常挑剔,所以“myfile.txt”应该可以存在于构建项目的任何地方。

至于关闭dataInputStream,它不在范围内。在try块之外声明它。在任何情况下,我建议将实际的close()调用放在finally块中,以确保它始终完成(如果引用不为null)。

答案 1 :(得分:0)

我同意吉列尔莫

myfile.txt需要在您的类路径中。

如果在命令行中运行此代码,它应该与此代码执行的文件夹相同,或者位于相同的包中。

对于datainput流,它超出了范围

答案 2 :(得分:0)

bufferedReader.close()必须在关闭此操作的末尾使用..