无法从字符串创建Path对象

时间:2014-03-25 09:58:47

标签: java io path nio

我跟随Oracle.com上的基本I / O教程,但我在制作Path对象时遇到了困难:

Path p1 = Paths.get("/tmp/foo");

出现错误:

  

错误:Paths类型中的方法get(URI)不适用于参数(String)。

我在Linux上,而且我在Eclipse Kepler工作。我试图访问当前目录中的文本文件。使用ScannerFile我可以使用该文件,但我也想弄清楚文件的路径,以便继续学习。

编辑:整个程序如下。下半场是我作为菜鸟并确认文件存在/有效。当我注释掉路径定义时,我得到"测试"的输出。这是在' save.txt'文件:

package projectSARA;
import java.util.*;
import java.io.*;
import java.net.URI;
import java.nio.file.Path;
import java.nio.file.Paths;
public class Main {

    public static void main(String[] args) {

        String saveFile = "save.txt";
        Path p1 = Paths.get(saveFile);
        Path p2 = Paths.get("save.txt");

        File file = new File(saveFile);
        try{
        Scanner in = new Scanner(file);
        String test = in.next();
        System.out.println(test);
        }
        catch(FileNotFoundException e){
            System.out.println("File not found");
        }
    }// end main

}

2 个答案:

答案 0 :(得分:5)

这似乎是Eclipse中(默认)JRE设置的问题。

要解决此问题,请在Package Explorer中右键单击“JRE System Library”>属性。

选择“执行环境”,然后选择“JavaSE-1.7(java-7-oracle)”,按“确定”。

在工作区外创建新项目时发生了这种情况。

答案 1 :(得分:2)

实际上,我在Eclipse上运行的Oracle Java 8遇到了同样的问题。但上面的解决方案并没有帮助。我的解决方案就是简单地说:

  1. 右键单击Package Explorer中的项目
  2. 选择Java Compiler
  3. 启用项目特定设置
  4. 将编译器合规性级别设置为1.7