我正在尝试使用Java.nio.file.Paths类读取文件的内容,我的代码看起来像这样
package com.test.json;
Path currentDir = Paths.get(".");
System.out.println(currentDir.toAbsolutePath());
它给了我路径
/home/rohit/workspace/MapReduceExample/.
而输出应为
home/rohit/workspace/MapReduceExample/src/com/test/json/
它忽略了src文件夹和包的组件。有人可以告诉我我做错了什么吗?
我不能给出绝对路径,因为我需要这个代码用于map-reduce路径,我必须以相对方式构造路径。所以,我的方法是做
getCurrentDirectoryPath + filename
答案 0 :(得分:0)
在我看来,您期望源Java文件(调用$scope.IsSelected = function(section){
return $scope.SelectedSection.LinkID == section.LinkID;
};
)所在目录的Path
。但这不是路径Paths.get(".")
将获取的内容。当JVM在主机文件系统上运行您的类时,"。"的值指的是JVM进程的当前工作目录。运行您的类的JVM很可能实际上是在该文件夹中启动的:"."
。如果你做了
/home/rohit/workspace/MapReduceExample
你会看到它打印的是同一个文件夹,没有尾随System.out.println(Paths.get(
System.getProperty("user.dir")).toAbsolutePath());
。