2016-02-18 4 views
0

Я прочитал api jCIFS о smbfile, но я не узнал, как получить полный smb-путь только с именем файла. Я хочу, чтобы он возвращает "кого-л: //aaa.bbb.com/sharedFolder/picture.jpg" в то время как она возвращает "SmB: //aaa.bbb.com/picture.jpg" есть код:Как получить полный путь с именем файла smb при использовании jcifs

String user = "user"; 
String password = "password"; 
String sharedFolder = "sharedFolder/"; 
String path = "smb://aaa.bbb.com/"; 
String fileName = "picture.jpg"; 
NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("", user, password); 
SmbFile smb = new SmbFile(path, auth); 
SmbFile smbFile = new SmbFile(smb, fileName); 
//String canonicalPath = smb.getCanonicalPath(); 
String filePath = smbFile.getUncPath(); 
+0

Я считаю, что удаленный видит только имя ресурса, а не имя общей папки в системе обмена. –

ответ

0

Ваш код не использует переменную sharedFolder в вашем коде. Вы могли бы сделать,

String path = "smb://aaa.bbb.com/sharedFolder"; 
String fileName = "picture.jpg"; 
NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("", user, password); 
SmbFile smb = new SmbFile(path, auth); 
SmbFile smbFile = new SmbFile(smb, fileName); 

или

String sharedFolder = "sharedFolder/"; 
String path = "smb://aaa.bbb.com/" + sharedFolder; // <-- append it 
String fileName = "picture.jpg"; 
NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("", user, password); 
SmbFile smb = new SmbFile(path, auth); 
SmbFile smbFile = new SmbFile(smb, fileName); 
+0

Поблагодарите u полностью. Извините, я не ясно объяснил свой вопрос. Я просто знаю имя файла и не знаю, где он находится. Я хочу, чтобы jcifs вернул полный путь, например команду «pwd». –

+0

Команда 'pwd' сообщает вам ваш текущий рабочий каталог. Вы думаете о «найти» или «найти». Вам нужно будет получить список удаленных каталогов и надеяться, что это общедоступная папка, и рекурсивно (или итеративно) * поиск * для совпадений. –

 Смежные вопросы

  • Нет связанных вопросов^_^