我需要将文件移动到其他位置,以便给它命名。 我试图做的是:
?
我得到一个例外:
Files.move(oldName, newName, options);
java.nio.file.NoSuchFileException: /media/sf_VboxShared/Data/csv/res20150201/xx/part-r-00000-f8ed41a5-e0e1-4534-a1d9-e4d6082691db.gz.parquet -> /media/sf_VboxShared/Data/csv/res20150201/res/xx.parquet
文件存在。 oldName
dosn存在。 (仅存在路径的newName
部分)
答案 0 :(得分:1)
您可以通过调用:
创建缺少的父目录Files.createDirectories( Paths.get( <your file path> ).getParent() );
答案 1 :(得分:1)
您说/media/sf_VboxShared/Data/csv/res20150201
,但您要将文件移动到/media/sf_VboxShared/Data/csv/res20150201/xx
的目录的父目录不存在。
所以你必须在移动之前先创建它:
Path newName = ...;
Files.createDirectories(newName.getParent());