Невозможно создать каталог Samba для Android
Я новичок в Android, и я просто хочу сделать снимок с моего Android и сохранить его в папке общего доступа на моем компьютере, это была простая задача, и я выполнил это, но теперь я застрял в этом, что я хочу создать сначала папка, например, myserver / share. Я не хочу размещать здесь фотографии, я хочу создать новую папку, такую как myserver / share / new folder
И я хочу, чтобы все мои фотографии попали в эту новую папку, пока я попробовал этот код
try
{
String url = "smb://serverpath/share/"+ edittext.getText().toString() +"/Test.jpg";
SmbFile smfile = null;
try {
NtlmPasswordAuthentication auth =new NtlmPasswordAuthentication("domain","myuser","pass");
smfile = new SmbFile(url, auth);
if(!smfile.exists())
{
smfile.mkdirs();
}
// output is like smb://mypc/e/sharedfoldername/file.txt;
SmbFileOutputStream out = new SmbFileOutputStream(smfile);
Bitmap bitmap = (Bitmap) data.getExtras().get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
out.write(byteArray);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
e.getCause();
}
но я получаю путь не найден исключение ниже,
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: jcifs.smb.SmbException: The system cannot find the path specified.
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:545)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at jcifs.smb.SmbTransport.send(SmbTransport.java:645)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at jcifs.smb.SmbSession.send(SmbSession.java:230)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at jcifs.smb.SmbTree.send(SmbTree.java:119)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at jcifs.smb.SmbFile.send(SmbFile.java:770)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at jcifs.smb.SmbFile.mkdir(SmbFile.java:2511)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at com.test.test.cameraapplication.MainActivity$2.run(MainActivity.java:180)
09-20 12:01:21.691 18341-19275/com.test.test.cameraapplication W/System.err: at java.lang.Thread.run(Thread.java:818)
1 ответ
Хорошо, я решил это, я не знаю, является ли это правильным решением или нет, но все же я поделюсь этим, я просто удалил имя файла из URL, и он создал каталог, и после этого я добавил файл в этот каталог
Как это
String url = "smb://myserver/share/"+ edittext.getText().toString();
SmbFile smfile = null;
try {
NtlmPasswordAuthentication auth =new NtlmPasswordAuthentication("domain","user","password");
smfile = new SmbFile(url, auth);
if(!smfile.exists())
{
smfile.mkdirs();
}
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
url = "smb://myserver/share/"+ edittext.getText().toString()+"/IMG_"+ timeStamp + ".jpg";