【问题标题】:Android - Save image from internet to internal / external storage and display it in webviewAndroid - 将图像从互联网保存到内部/外部存储并在 webview 中显示
【发布时间】:2011-09-05 11:19:07
【问题描述】:

我需要将图像从互联网保存到内部/外部存储并在本地 webview 中显示。我已经从互联网上检索图像。我需要帮助将其保存在内部或外部存储中,以及在 webview 中显示它的路径。

【问题讨论】:

    标签: android


    【解决方案1】:

    如何将输入流中的图像保存到 sdcard 中..

    String dir = Environment.getExternalStorageDirectory().toString();
    OutputStream fos = null;                
    File file = new File(dir,"downloadImage.JPEG");
    Bitmap bm =BitmapFactory.decodeStream(your input stream);
    fos = new FileOutputStream(file);
    BufferedOutputStream bos = new BufferedOutputStream(fos);
    bm.compress(Bitmap.CompressFormat.JPEG, 50, bos);
    bos.flush();
    bos.close();
    

    现在您的图像保存为 sdcard 中的 download.JPEG..

    您可以使用此路径获取图像..

    dir+"\downloadImage.JPEG"
    

    【讨论】:

      【解决方案2】:

      对于内部存储,您可以使用 SQlite 或 sharedpreference,对于外部存储,请查看本教程:

      http://www.vogella.de/articles/AndroidFileSystem/article.html

      【讨论】:

        【解决方案3】:
        try {
                   FileOutputStream out = new FileOutputStream(filename);
                   bmp.compress(Bitmap.CompressFormat.PNG, 90, out);
            } catch (Exception e) {
                   e.printStackTrace();
            }
        

        从以下函数中获取图像并将drawable保存在文件中

        private Drawable LoadImageFromWeb(String url) {
          try {
           InputStream is = (InputStream) new URL(url).getContent();
           Drawable d = Drawable.createFromStream(is, "src name");
           return d;
          } catch (Exception e) {
           System.out.println("Exc=" + e);
           return null;
          }
         }
        

        【讨论】:

        • 此方法不保存原始图像,而是重新压缩的png,可以使用更多空间。
        猜你喜欢
        • 1970-01-01
        • 2021-04-27
        • 2013-10-28
        • 2018-04-20
        • 2015-06-14
        • 2013-05-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多