2015-03-03 32 views
2

我正在使用Java CIFS Client Library但面临问题和问题是copyTo功能不起作用。 我有一个包含文件的文件夹。我想将这些文件读取到其他网络路径。jcifs 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具有读/写访问'everyone'用户。

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) 

     } 
+1

我也需要这个答案,希望能有帮助。 – sikander 2015-03-03 13:33:27

回答

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) 

     } 

要复制该文件的文件必须位于目标文件夹中。 首先,我们将在目标文件夹中创建一个具有相同名称的文件,然后将其复制到该文件夹​​中

+0

很有帮助。谢谢 – 2017-02-20 12:35:09