Java 在不同文件系统之间复制目录内容的干净方法?
我想将文件从一个Java 在不同文件系统之间复制目录内容的干净方法?,java,path,filesystems,jvm-languages,Java,Path,Filesystems,Jvm Languages,我想将文件从一个java.nio.file.FileSystem复制到另一个文件系统。例如,从默认文件系统到com.google.common.jimfs.jimfs 下面我提供了一个可以在Java中使用的解决方案,如下所示: // Java code import com.google.common.jimfs.Jimfs; import org.junit.Test; import java.io.IOException; import java.nio.file.Files; impor
java.nio.file.FileSystem
复制到另一个文件系统。例如,从默认文件系统到com.google.common.jimfs.jimfs
下面我提供了一个可以在Java中使用的解决方案,如下所示:
// Java code
import com.google.common.jimfs.Jimfs;
import org.junit.Test;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
public class UsageExamples
{
@Test
public void UsageExample() throws IOException
{
Path dir = Jimfs.newFileSystem().getPath("dirWithSomeContents");
Path dest = Jimfs.newFileSystem().getPath("destDir");
Files.createDirectory(dir);
Files.createDirectory(dest);
// Act
new FileSystemsOperations().copyDirContentsRecursivelyToDirInDifferentFileSystem(dir, dest);
}
}
我的Groovy解决方案(完整代码):
我已经为这个用例编写了一些实用程序类。该库是开源的,您可能会发现它很有用:
CopyFileVisitor.copy(srcPath, targetPath);
马文:
<dependency>
<groupId>org.softsmithy.lib</groupId>
<artifactId>softsmithy-lib-core</artifactId>
<version>0.5</version>
</dependency>
org.softsmithy.lib
Javadoc:
源代码:
<dependency>
<groupId>org.softsmithy.lib</groupId>
<artifactId>softsmithy-lib-core</artifactId>
<version>0.5</version>
</dependency>