同一目录下,A.java,B.txt
A.java中想读取B.txt中的数据如何初始化File呢?
我只会用绝对路径FileInputStream("C;\\XX\\XX\\B.txt");
觉得这样很麻烦
请高人指教

解决方案 »

  1.   

    同一目录下,A.java,B.txt
    A.java中想读取B.txt中的数据
    -----------------------
    FileInputStream("B.txt");
      

  2.   

    更保险的做法:
    InputStream in = this.getClass().getClassLoader().getResource("B.txt");
    InputStreamReader(InputStream in);
    BufferedReader(Reader reader);
    然后利用BufferedReader的对象来读取文件内容,一般读取文件内容也是用BufferedReader.这样,当你把程序打包后,一样可以读取B.txt的内容,否则容易出错。
      

  3.   

    正解个P
    IO的相对目录是相对于 user.dir 中定义的相对目录
      

  4.   

    顶4楼。答案他已经给出来了,如果你把该文件放在所有.cpp和.h的文件夹中时,它的相对路径是“.\B.txt”,放在上一级目录才是“B.txt”