我正在使用Java CIFS Client Library,但面临问题,问题是copyTo功能不起作用。 我有一个包含文件的文件夹。我想将这些文件读取到其他网络路径。
String path1 = "//MACHINE-NAME/SHARE-FOLDER"
NtlmPasswordAuthentication auth = new
NtlmPasswordAuthentication(DOMAIN;USERNAME:PASSWORD)
SmbFile readFolder = new SmbFile("smb://MACHINE-NAME/SHARE-FOLDER/",auth)
这很好用。 然后我有另一个网络路径并定义如下,ShareFolder2具有对“所有人”用户的读/写访问权限。
String path2 = "//MACHINE-NAME/SHARE-FOLDER2"
NtlmPasswordAuthentication auth = new
NtlmPasswordAuthentication(DOMAIN;USERNAME:PASSWORD)
SmbFile destinationFolder = new SmbFile("smb://MACHINE-NAME/SHARE-FOLDER2/",auth)
ArrayList<SmbFile> readFiles = readFolder?.listFiles()
for(file in readFiles ){
file.copyTo(destinationFolder)
}
答案 0 :(得分:4)
如果要将文件从一个共享位置复制到另一个共享位置。你可以这样吗
ArrayList<SmbFile> readFiles = readFolder?.listFiles()
for(file in readFiles ){
String name = file.properties.getKey("name")
destinationFolder = new SmbFile(foldersInfo?.destinationFolder+"/"+name,auth)
destinationFolder.createNewFile()
file.copyTo(destinationFolder)
}
要复制该文件的文件必须位于目标文件夹中。 首先,我们将在目标文件夹中创建一个具有相同名称的文件,然后复制到该文件夹