访问外部文件

时间:2016-02-07 04:13:19

标签: java eclipse

使用nio2使用eclipse读取桌面上的外部文件。我得到以下代码的例外。

java.nio.file.NoSuchFileExceptionC:\Users\User\Desktop\JEE\FirstFolder\first.txt

请告知如何解决?也尝试使用命令提示符。得到同样的例外。

public class ReadingExternalFile {

    public static void main(String[] args) {

        Path p1= Paths.get("C:\\Users\\User\\Desktop\\FirstFolder\\first.txt");
        System.out.println(p1.toString());
        System.out.println(p1.getRoot());

        try(InputStream in = Files.newInputStream(p1);
            BufferedReader reader = new BufferedReader(new InputStreamReader(in)))
            {
            System.out.println("Inside try");
            String line=null;           
            while((line=reader.readLine())!=null){
                if (!line.equals("")) {
                    System.out.println(line);
                    }
                //System.out.println(line);
            }
        } catch (IOException e) {
            System.out.println( e);
        }
    }
}

4 个答案:

答案 0 :(得分:0)

我不明白你为什么使用Path对象,你可以简单地使用File对象创建文件,只使用字符串作为路径,然后将其包装在文件读取器对象中,然后将其包装在缓冲读取器中,结尾应该是这样的:

public static void main(String[] args) {

    try {
        File file = new File("C:\\Users\\User\\Desktop\\FirstFolder\\first.txt");
        FileReader fr = new FileReader(file);
        BufferedReader bfr = new BufferedReader(fr);

        System.out.println(bfr.readLine());

        bfr.close();

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

不要忘记在阅读和写作后关闭你的流,也使用可读的名字(不要做我做过的,使用有意义的名字!)

答案 1 :(得分:0)

尝试以下代码希望这对您有所帮助。

const Resultset = props => (
    {props.rows.map(rows => {
        <tr>
            {rows.map(number => <td>{number}</td>)}
        </tr>
    })}
);

答案 2 :(得分:0)

试试这个。

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class BufferedReaderExample {

    public static void main(String[] args) {

        BufferedReader br = null;

        try {

            String sCurrentLine;

            br = new BufferedReader(new FileReader("C:\\Users\\User\\Desktop\\FirstFolder\\first.txt"));

            while ((sCurrentLine = br.readLine()) != null) {
                System.out.println(sCurrentLine);
            }

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (br != null)br.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }

    }
}

答案 3 :(得分:0)

public static void main(String[] args) {

try {
    File file = new File("C:\\Users\\User\\Desktop\\FirstFolder\\first.txt");
    FileReader freader = new FileReader(file);
    BufferedReader bufreader = new BufferedReader(freader);

    System.out.println(bufreader.readLine());

    bufreader.close();

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

}