溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android 通過webservice上傳多張圖片到指定服務器詳解

發(fā)布時間:2020-10-15 21:01:47 來源:腳本之家 閱讀:133 作者:厲害了我的江 欄目:移動開發(fā)

Android 通過webservice上傳多張圖片到指定服務器詳解

當你瀏覽這個的時候相信你對webservice的基本應用已經(jīng)有一定的了解了,若是還沒有明白的小伙伴,可以看我前面寫的文章點擊打開鏈接,這幾天在開發(fā)一款app,需要上傳圖片到指定服務器吧,但是我剛開始以為在網(wǎng)上面應該有這樣的好文章的吧,結果我在網(wǎng)絡上找了好多代碼,在傳遞圖片的過程中,遇到各種bug,真是國人的東西就是喜歡復制別人的,自己不動手檢驗一下代碼的正確性,哎,我也是無語了,然后我決定花點時間來填補一下這個空缺,寫了這一片博文,讓小伙伴們不走彎路,,首先我修改的網(wǎng)上的錯誤代碼,Android端代碼如下:這個是在異步類的一個方法里面,doInBackground(String... params)

InputStream fis; 
  try { 
  fis = new FileInputStream(params[0]+params[1]);//params[0]為文件路徑,params[1]為文件名稱 
  ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
  byte[] buffer = new byte[4096]; 
  int count =-1; 
  String uploadBuffer = null ; 
  try { 
   while((count = fis.read(buffer))!=-1){ 
   baos.write(buffer, 0, count); 
   uploadBuffer=Base64.encodeToString(baos.toByteArray(), Base64.DEFAULT); //進行Base64編碼Base64.DEFAULT這個不能換成count 
   } 
   SoapObject soapObject=webServiceBase.getBaseSimpleData(params[1],uploadBuffer,"getImageFromAndroid",AgbcApi.TASKSERVICEURL); 
   reque=soapObject.getProperty(0).toString(); 
  } catch (IOException e) { 
   e.printStackTrace(); 
  } 
  } catch (FileNotFoundException e1) { 
  e1.printStackTrace(); 
  } 


服務端代碼

public String getImageFromAndroid(String filename, String image){ 
OutputStream fos = null; 
try{ 
Date date=new Date(); 
DateFormat format=new SimpleDateFormat("yyyy-MM-dd"); 
String time=format.format(date); 
String toDir = "d:\\Program Files\\images\\"+time+"\\"; //存儲路徑 
byte[] buffer = new BASE64Decoder().decodeBuffer(image); //對android傳過來的圖片字符串進行解碼 
File destDir = new File(toDir); 
if(!destDir.exists()) 
destDir.mkdir(); 
fos = new FileOutputStream(new File(toDir,filename)); //保存圖片 
fos.write(buffer); 
fos.flush(); 
fos.close(); 
return "上傳圖片成功!" + "圖片路徑為:" + toDir; 
}catch (Exception e){ 
e.printStackTrace(); 
} 
return "上傳圖片失??!"; 

這樣只要調用服務端方法就可以上傳圖片了

然而,你認為到這就完了嗎???沒有沒有啦!這只能是一張一張圖片的上傳,可是有時候我們需要批量的圖片上傳,怎么辦呢?既然一張圖片都搞定了,何況多上圖片,用一個循環(huán)不就實現(xiàn)了,然而的然而,都怪我們年少輕狂呀,事情往往不是這個簡單的,請看這篇文章:https://www.jb51.net/article/106650.htm

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI