Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将位图中的图像保存到android中的存储器中_Java_Android - Fatal编程技术网

Java 如何将位图中的图像保存到android中的存储器中

Java 如何将位图中的图像保存到android中的存储器中,java,android,Java,Android,我成功地将图像保存在存储器中,但我无法从存储器中读取这些图像, 这是我的代码:- String dir = Environment.getExternalStorageDirectory()+ File.separator+"DCIM/stegano"; String dir=Environment.getExternalStorageDirectory()+File.separator+“DCIM/stegano”; //创建文件夹 文件夹=新文件(目录); 如果(!folder.exis

我成功地将图像保存在存储器中,但我无法从存储器中读取这些图像, 这是我的代码:-

String dir = Environment.getExternalStorageDirectory()+ File.separator+"DCIM/stegano";
String dir=Environment.getExternalStorageDirectory()+File.separator+“DCIM/stegano”;
//创建文件夹
文件夹=新文件(目录);
如果(!folder.exists()){
folder.mkdirs();
Toast.makeText(getApplicationContext(),“我在if中”,
Toast.LENGTH_LONG).show();
}
//创建名称文件
字符串simpleDate=新SimpleDateFormat(“yyyyymmdd_HHmmss”).format(新日期());
字符串nameImage=“STE_”+simpleDate;
//创建文件
位图;
OutputStreamoutputStream;
位图=BitmapFactory.decodeResource(getResources(),R.drawable.grass)//我画的是一幅图画
File File=新文件(dir,nameImage+“.png”);
试一试{
outputStream=新文件outputStream(文件);
compress(bitmap.CompressFormat.PNG,100,outputStream);
outputStream.flush();
outputStream.close();
}catch(filenotfounde异常){
e、 printStackTrace();
}捕获(IOE异常){
e、 printStackTrace();

}
Amirouche,下面是将位图保存到文件的示例代码:

public static File savebitmap(Bitmap bmp) throws IOException {
    ByteArrayOutputStream bytes = new ByteArrayOutputStream();
    bmp.compress(Bitmap.CompressFormat.JPEG, 60, bytes);
    File f = new File(Environment.getExternalStorageDirectory()
            + File.separator + "testimage.jpg");
    f.createNewFile();
    FileOutputStream fo = new FileOutputStream(f);
    fo.write(bytes.toByteArray());
    fo.close();
    return f;
}
现在调用此函数将位图保存到内存中

File newfile=savebitmap(位图)

我希望它能帮助你。
快乐的编码生活

Amirouche,下面是将位图保存到文件的示例代码:

public static File savebitmap(Bitmap bmp) throws IOException {
    ByteArrayOutputStream bytes = new ByteArrayOutputStream();
    bmp.compress(Bitmap.CompressFormat.JPEG, 60, bytes);
    File f = new File(Environment.getExternalStorageDirectory()
            + File.separator + "testimage.jpg");
    f.createNewFile();
    FileOutputStream fo = new FileOutputStream(f);
    fo.write(bytes.toByteArray());
    fo.close();
    return f;
}
现在调用此函数将位图保存到内存中

File newfile=savebitmap(位图)

我希望它能帮助你。
快乐的编码生活

您正在保存图像.jpg forma,但我想保存它.bmp我们要保存到存储器中的文件可以是“.jpg”或“.png”,但您不能创建“.bmp”文件扩展名。那是什么60号?这是一个定义图像质量的数字,范围为0-100。您正在保存图像。jpg forma但我想保存它。bmp我们要保存到存储的文件可以是“.jpg”或“.png”,但您不能创建“.bmp”文件扩展名。那60是什么数字?它是一个定义图像质量的数字,范围从0到100