文件阅读问题

时间:2011-07-26 12:22:10

标签: java

我正在尝试用java读取文件。以下是代码。

    String str = ".\\SomeFileName";

    File file = new File(str);

    InputStream is = new FileInputStream(file.getPath());

最后一行抛出FileNotFoundException。有人可以帮忙吗?

4 个答案:

答案 0 :(得分:2)

您需要确定当前的工作目录。你可以用这个找出你当前的工作目录:

String curDir = System.getProperty("user.dir");

答案 1 :(得分:0)

您可以通过两种方式指定文件;绝对的,例如

String fileName1 = "c:\temp\myfile.txt";  \\For Windows
String fileName2 = "/home/qwerky/myfile.txt";  \\For Linux

或亲戚,例如

String fileName3 = "myfile.txt";

如果使用相对路径,则路径相对于java的当前工作目录。您可以通过获取文件“。”来找到它。和绝对的道路。

File cwd = new File(".");
System.out.println("Current working directory is " + cwd.getAbsolutePath());

答案 2 :(得分:0)

尝试给出绝对路径...完整目录路径。

File file = new File("C:\\abc.txt");

然后再测试一下。 str是一个文件名为

的字符串
File file = new File(str);
String absolutePath = file.getAbsolutePath();
System.out.println(absolutePath);

答案 3 :(得分:0)

下面的程序工作正常,请先通过取消注释注释语句并注释InputStreamReader语句来运行它

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintStream;

public class FileRead {
public static void main(String args[]){
    try{
         //String str = ".\\SomeFileName";

            File file = new File(".\\file.csv");

           // FileWriter writer=new FileWriter(file);
            //writer.write("it can writer");
            //writer.flush();

            InputStream is = new FileInputStream(file.getPath());
            BufferedReader br=new BufferedReader(new InputStreamReader(is));
            System.out.println(br.readLine());


    }catch(Exception e){
        e.printStackTrace();
    }


}
}

我认为你把文件放在正确的位置有问题