0

我想创建一个文件夹并将图像存储到手机的内部存储器中。我尝试使用下面的代码从 url 下载图像。它设法将图像加载到 imageView 中,但无法在内部存储中存储和创建文件夹。另外,我没有收到任何警告或错误消息。知道下面的代码有什么问题吗?

        Bitmap bm = null;
        InputStream in;

            try{

                in = new java.net.URL("http://blogs.computerworld.com/sites/computerworld.com/files/u177/google-nexus-4.jpg").openStream();
                bm = BitmapFactory.decodeStream(new PatchInputStream(in));
                File mydir = this.getDir("mydir", Context.MODE_PRIVATE);
                mydir.mkdirs();
                File fileWithinMyDir = new File(mydir, "myfile");
                FileOutputStream out = new FileOutputStream(fileWithinMyDir);
                bm.compress(Bitmap.CompressFormat.JPEG, 85, out);



            }
            catch(Exception e1){
                e1.printStackTrace();
            }
  ImageView img = (ImageView) findViewById(R.id.image_display);
  img.setImageBitmap(bm);
4

2 回答 2

1

使用以下内容:

String path=Environment.getExternalStorageDirectory()
                                .toString() + File.separator 

获取目录并保存图像。

于 2012-12-06T01:46:38.377 回答
1

一旦你有了你的位图bm

FileOutputStream fos;

try {
    fos = openFileOutput("file_Name", Context.MODE_PRIVATE);
    bm.compress(Bitmap.CompressFormat.PNG, 100, fos);
    fos.close();
}catch (Exception e){
...
}

将您的文件保存到内部存储

于 2012-12-06T01:51:03.407 回答