Jak skopiować plik z udziału SMB na dysk lokalny za pomocą jcifs w Javie?
Czy ktoś może mi pomóc skopiować plik z folderu udostępnionego na dysk lokalny? Mój kod to:
import jcifs.smb.NtlmPasswordAuthentication;
import jcifs.smb.SmbFile;
import jcifs.smb.SmbFileInputStream;
import jcifs.smb.SmbFileOutputStream;;
public class smb {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String urlToBackUpFile = "smb://ip/backup$/test.txt";
System.out.println("smb folder of source file" + urlToBackUpFile);
NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication(null, "login", "pass");
SmbFile dir = new SmbFile(urlToBackUpFile, auth);
System.out.println(dir.getDate());
SmbFile dest = new SmbFile ("C:/SQLRESTORESTAGE/v2.bak");
dir.copyTo(dest);
}
}
Plik pliku nie jest kopiowany. Otrzymałem komunikat „Nie udało się połączyć z serwerem”, ale program pokazuje dir.getDate () (i nazwę pliku oraz długość) pliku źródłowego. Myślę więc o problemie z folderem docelowym (C: / SQLRESTORESTAGE /). Mam także prowokacje tylko do odczytu pliku źródłowego. Czy mógłbyś mi pomóc zmienić kod lub coś poradzić? Dziękuję Ci.