2016-09-20 101 views
3

我是新來的機器人,我只是想從我的Android拍攝一張照片並將其保存到我的電腦上的共享文件夾,這是一個簡單的任務,我已經完成了這個,但現在我停留在此,我想先例如創建一個文件夾我, MYSERVER /股 我不想在這裏放置圖片,我想創建一個新的文件夾這樣 MYSERVER /股/新文件夾無法創建桑巴目錄Android

我希望所有的照片都可以進入這個新文件夾,到目前爲止,我已經試過這個代碼

    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) 

回答

0

好,我解決了這個,我不知道這是否是一個正確的解決方案或沒有,但我依然會分享這個我只是刪除從文件名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";