Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有java.nio.file*的目录和文件扫描程序;_Java_Path_Nio - Fatal编程技术网

带有java.nio.file*的目录和文件扫描程序;

带有java.nio.file*的目录和文件扫描程序;,java,path,nio,Java,Path,Nio,如何在java.io.File中实现相同的功能 List<File> List = (List<File>) FileUtils.listFilesAndDirs(directory, TrueFileFilter.TRUE, TrueFileFilter.TRUE); String fileID = f.getAbsolutePath().replaceAll(staticRoot, "");

如何在java.io.File中实现相同的功能

List<File> List = (List<File>) FileUtils.listFilesAndDirs(directory, 
                                    TrueFileFilter.TRUE, TrueFileFilter.TRUE);
String fileID = f.getAbsolutePath().replaceAll(staticRoot, "");
staticRoot=/home/test/dir1/dir10/test9.txt

由于
FileUtils.listFilesAndDirs(directory,TrueFileFilter.TRUE,TrueFileFilter.TRUE)
将递归访问
目录中的所有子目录,因此结果应剪切“/home/test/”,并仅返回dir1/dir10/test9.txt

通过遍历以给定起始文件为根的文件树,返回以路径惰性填充的流。文件树是以深度优先的方式遍历的,流中的元素是路径对象,这些对象是通过解析相对于开始的相对路径而获得的


给定一个表示
/home/test/dir1/dir10/test9.txt
的j.n.f.Path对象,调用
.getParent()
以获取表示dir10的内容。然后,如果您有一个表示
/home/test/dir1/dir10/subdir1/subdir2/foo.txt的路径,并且希望将其转换为
subdir1/subdir2/foo.txt
,则可以使用j.f.path的
relatize
方法来执行此操作。不需要更换,也不需要全部更换

注意:你用错了。replaceAll将正则表达式作为第一个参数,将替换作为第二个参数,并替换对该正则表达式的所有点击。replace方法将字符串作为参数,将replace作为第二个参数,然后。。也取代了所有。假设您的staticRoot不是regexp,那么您使用了错误的调用。只是下一次的教训。是的,名字令人困惑

DirectoryStream<Path> List = Files.newDirectoryStream(Paths.get(directory));    
String fileID = f.??? 
String fileID = f.toAbsolutePath().toString().replaceAll(staticRoot, "");

for (Path f : fList) {
    String fileID = f.toAbsolutePath().toString().replaceAll(staticRoot, "");
    System.out.println("file ID : " + fileID);
    String parentID = null;
}