2015-02-06 157 views
0

這裏我通過在我的服務器上使用'base64格式'轉換爲字符串來存儲圖像,並且我可以在圖像視圖中以相同的方式顯示它。但是現在我想要將它下載到我的sd卡。我可以看到有些人使用'URL'下載。但在我的情況下,沒有URL.I只是將圖像轉換爲字符串並存儲,並能夠通過重新轉換在imageview上顯示它。Android下載圖像

這是我再轉串入圖像

//getting string from server using json parsor 
String image=json_data.getString("img"); 
txt.setText(u); 
//converting string to image 
byte[] imageAsBytes = Base64.decode(p.getBytes(), 0); 
    im = (ImageView)this.findViewById(R.id.imageView1); 
    im.setImageBitmap(
      BitmapFactory.decodeByteArray(imageAsBytes, 0,imageAsBytes.length)); 
+0

,什麼是你的問題? – Bracadabra 2015-02-06 14:08:03

+0

我需要將它保存到我的SD卡 – 2015-02-07 05:51:30

回答

0

方式這個片段應該幫助!

//給任何名義提交XXX.JPG

File filePath = new File(Environment.getExternalStorageDirectory()+"/name.jpg"); 

    FileOutputStream os = new FileOutputStream(filePath, true); 

編輯

Bitmap x = BitmapFactory.decodeByteArray(imageasbytes , 0 , inageasbytes.length()); 

        x.compress(
          Bitmap.CompressFormat.JPEG, 85, os); 

         os.flush(); 
         os.close(); 

此外,添加以下權限。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> 

另外,如果你想知道如何恢復它..

String imgFile = Environment.getExternalStorageDirectory() + "/name.jpg"; 

Bitmap myBitmap =  BitmapFactory.decodeFile(imgFile); 

Imageview.setimagebitmap(MYBITMAP);

+0

對不起,它說不能調用你的第三行數組byte []上的壓縮 – 2015-02-07 05:50:49

+0

檢查編輯。 – TheAnimatrix 2015-02-07 06:36:20

+0

對不起,先生現在得到錯誤未處理的異常類型文件沒有發現異常在'文件filepath = ....' – 2015-02-07 10:07:43