|
|
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Может тут помогут... Здравствуйте. Мне нужно скопировать большой файл (5 гб) из сетевой расшаренной папки (права только на чтение) на локальную машину, но у меня не получается. Использую библиотеку JCIFS. Вот код: 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 папка в которую стучимся " + 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/test.txt"); dir.copyTo(dest); } } Код не работает, как сказала, файл не копирует. Пишет в дебагере "Failed to connect to server". Причем проблема, как я предполагаю, именно в подключении к папке C:/SQLRESTORESTAGE/. Потому что System.out.println(dir.getDate()) (размер, имя файла) возвращают нормально из сетевой папки. Помогите, пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 09:53:24 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Монтируйте папку средствами ОС, не мучайтесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 10:25:10 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Даже монтировать не нужно. Под виндой должно пусть к шаре понимать через FileInputStream. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:17:16 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12new SmbFile ("C:/SQLRESTORESTAGE/test.txt") http://www.jarvana.com/jarvana/view/org/samba/jcifs/jcifs/1.2.19/jcifs-1.2.19-javadoc.jar!/jcifs/smb/SmbFile.html авторThis class represents a resource on an SMB network. Mainly these resources are files and directories however an SmbFile may also refer to servers and workgroups. If the resource is a file or directory the methods of SmbFile follow the behavior of the well known File class. One fundamental difference is the usage of a URL scheme [1] to specify the target file or directory. SmbFile URLs have the following syntax: smb://[[[domain;]username[:password]@]server[:port]/[[share/[dir/]file]]][?[param=value[param2=value2[...]]] т.е., smb:// является обязательным да? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:20:49 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:24:53 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
FileOutputStream out = new FileOutputStream(new File("C:/SQLRESTORESTAGE/test.txt")); OutputStream out = new FileOutputStream("C:/SQLRESTORESTAGE/test.txt"); SmbFileInputStream in = new SmbFileInputStream("smb://..."); InputStream in = new FileInputStream("\\\\ip\\backup$\\test.txt"); while((readed = in.read()) > 0) { out.write(readed); } IOUtils.copy(in, out); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:30:09 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczFileOutputStream out = new FileOutputStream(new File("C:/SQLRESTORESTAGE/test.txt")); OutputStream out = new FileOutputStream("C:/SQLRESTORESTAGE/test.txt"); SmbFileInputStream in = new SmbFileInputStream("smb://..."); InputStream in = new FileInputStream("\\\\ip\\backup$\\test.txt"); while((readed = in.read()) > 0) { out.write(readed); } IOUtils.copy(in, out);login:pass позабыт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:37:07 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12SmbFile dest = new SmbFile ("C:/SQLRESTORESTAGE/test.txt");наверняка должно быть SmbFile dest = new SmbFile ("smb://C:/SQLRESTORESTAGE/test.txt"); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:38:56 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
grasoff.netlogin:pass позабыт Надо запустить процесс от имени юзера, который имеет доступ. Нафиг там login\pass, это ж вся секурити по одному месту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:39:54 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczgrasoff.netlogin:pass позабыт Надо запустить процесс от имени юзера, который имеет доступ. Нафиг там login\pass, это ж вся секурити по одному месту.ну, мало ли надо одним процессом из разных шар забирать всякое.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:43:04 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Ладно, привязались вы к этому JCIFS - не буду переубеждать. Сами испытывайте плюсы и минусы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:43:17 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
IgorKonovalovЛадно, привязались вы к этому JCIFS - не буду переубеждать. Сами испытывайте плюсы и минусы. Автор ещё ни одного коментария не оставил. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:45:19 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:46:33 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, )) кстати да. Автора в студию!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 11:49:18 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
Автор тут, тут!!! Отвлеклась на багфикс. Спасибо, что откликнулись. По порядку: grasoff.netнаверняка должно быть SmbFile dest = new SmbFile ("smb://C:/SQLRESTORESTAGE/test.txt"); не работает. Также пробовала указывать ip и имя компа вместо "С:". grasoff.netт.е., smb:// является обязательным да? не знаю. странно как-то для машины на которой запускается программа и на которую нужно скопировать файл указывать smb. упражнения с OutputStream и SmbFileInputStream сейчас проделываю. Не бросайте меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 12:48:12 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12странно как-то для машины на которой запускается программа и на которую нужно скопировать файл указывать smbну, чо поделаешь, если у них в джавадоке ничего не написано May12не работаетвот странно; читал, что работает ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 12:50:29 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
grasoff.net, с попыткой прочитать и записать поток тоже не получилось: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. =((( ой, ёй, ёй!!! что же делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:14:26 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12, Еще не пора папку монтировать? Ну тогда продолжаем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:19:11 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
IgorKonovalov, Игорь, поясните, что имеете в виду: монтировать папку в которую пишем файл? поясните, пожалуйста, подробнее. Папка в которую пишем, находить на машине на которой запускается программа. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:22:16 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12Игорь, поясните, что имеете в виду: монтировать папку в которую пишем файл? поясните, пожалуйста, подробнее. Папка в которую пишем, находить на машине на которой запускается программа. Спасибо. Монтировать сетевую шару, чтобы система её видела как локальный диск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:26:54 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12, Подключите удаленную папку например как сетевой диск для Windows или примонтируйте в unix. И работайте с удаленными папками из java как с обычными локальными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:30:29 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
IgorKonovalovMay12, Подключите удаленную папку например как сетевой диск для Windows Один момент: А зачем подключать сетевую папку как диск? Ведь скрпит заходит в папку и видит содержимое, показывает дату, размер и все такое. Да, сорри: речь идет именно о Windows Server 2003 EE SP2. Немного погуглила и возник вопрос: подключить расшаренную папку как диск можно средствами ОС Windows Server 2003 EE SP2 или нужно доп софт ставить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:37:50 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
IgorKonovalovMay12, Подключите удаленную папку например... Сделано. Перезагружаюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:47:52 |
|
||
|
JCIFS: Как скопировать файл из расшаренной SMB папки на локальную машину?
|
|||
|---|---|---|---|
|
#18+
May12IgorKonovalovMay12, Подключите удаленную папку например как сетевой диск для Windows Один момент: А зачем подключать сетевую папку как диск? Ведь скрпит заходит в папку и видит содержимое, показывает дату, размер и все такое. Да, сорри: речь идет именно о Windows Server 2003 EE SP2. Немного погуглила и возник вопрос: подключить расшаренную папку как диск можно средствами ОС Windows Server 2003 EE SP2 или нужно доп софт ставить? Про первое не очень понял - ну да, в дескрипторах файлов ntfs содержится такая информация. Про второе: win поддерживает монтирование шар(cifs, smb или как хотите их называйте), ftp и http(webdav) вроде бы как из коробки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2012, 14:49:10 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38038100&tid=2130537]: |
0ms |
get settings: |
13ms |
get forum list: |
12ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
119ms |
get tp. blocked users: |
2ms |
| others: | 287ms |
| total: | 486ms |

| 0 / 0 |
