java - 如何从缓存文件和网络中解码位图

标签 java android bitmap

我正在使用此方法来检索位图

 private Bitmap getBitmap(String url) 
{
    File f=fileCache.getFile(url);

    //from SD cache


    if(b!=null)
        return b;

    //from web
    try {
        Bitmap bitmap=null;
        Log.e("URL", url);
        URL imageUrl = new URL(url);
        HttpURLConnection conn = (HttpURLConnection)imageUrl.openConnection();
        conn.setConnectTimeout(30000);
        conn.setReadTimeout(30000);
        InputStream is=conn.getInputStream();
        OutputStream os = new FileOutputStream(f);
        Utils.CopyStream(is, os);
        os.close();

        return bitmap;
    } catch (Exception ex){
       ex.printStackTrace();
       return null;
    }
}

正如您在上面看到的,我如何从 SD 卡或缓存以及从 Web 代码获取的位图进行解码?我尝试过一种方法,但没有成功。

最佳答案

文件部分看一下 here 。具体看decodeFile。

至于Url Image看看here有关它的小教程。

关于java - 如何从缓存文件和网络中解码位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7656274/

相关文章:

java - fragment 中的Android "Only the original thread that created a view hierarchy can touch its views."错误

java - 如何使用 xml 文件中的数据填充 SQLite 数据库?

android - 通过 JDBC 连接 Android Studio 与(本地)mySql Server

android - LayerDrawable转位图

java - 限制循环字符串生成器中的空间

java - 正则表达式去除驱动器号

java - 将位图与标准 Java 合并

android - 如何从文件管理器中获取位图?

java - 设置异常(exception)

javascript - 如何在适用于 Android 和 cordova 的项目中单击通知时显示特定页面?