大佬教程收集整理的这篇文章主要介绍了android – 将Bitmap写入外部存储(sdcard),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
04-11 22:13:14.899: E/error(13833): /mnt/sdcard/myTomatoes/covers/378194.PNG: open Failed: ENOENT (No such file or directory) 04-11 22:13:14.899: W/System.err(13833): java.io.FileNotFoundException: /mnt/sdcard/myTomatoes/covers/378194.PNG: open Failed: ENOENT (No such file or directory) 04-11 22:13:14.899: W/System.err(13833): at libcore.io.IoBridge.open(IoBridge.java:416) 04-11 22:13:14.899: W/System.err(13833): at java.io.FiLeoutputStream.<init>(FiLeoutputStream.java:88) 04-11 22:13:14.899: W/System.err(13833): at java.io.FiLeoutputStream.<init>(FiLeoutputStream.java:73) 04-11 22:13:14.899: W/System.err(13833): at Bl.ImageMethods.SaveImageToMemory(ImageMethods.java:60) 04-11 22:13:14.899: W/System.err(13833): at com.example.myTomatoes.MovieDetailsActivity$4.onClick(MovieDetailsActivity.java:337) 04-11 22:13:14.899: W/System.err(13833): at com.android.internal.app.AlertController$ButtonHandler.handlemessage(AlertController.java:166) 04-11 22:13:14.899: W/System.err(13833): at android.os.Handler.dispatchmessage(Handler.java:99) 04-11 22:13:14.899: W/System.err(13833): at android.os.Looper.loop(Looper.java:137) 04-11 22:13:14.899: W/System.err(13833): at android.app.ActivityThread.main(ActivityThread.java:5039) 04-11 22:13:14.899: W/System.err(13833): at java.lang.reflect.Method.invokeNative(Native Method) 04-11 22:13:14.899: W/System.err(13833): at java.lang.reflect.Method.invoke(Method.java:511) 04-11 22:13:14.899: W/System.err(13833): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 04-11 22:13:14.899: W/System.err(13833): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 04-11 22:13:14.899: W/System.err(13833): at dalvik.system.NativeStart.main(Native Method) 04-11 22:13:14.899: W/System.err(13833): Caused by: libcore.io.ErrnoException: open Failed: ENOENT (No such file or directory) 04-11 22:13:14.899: W/System.err(13833): at libcore.io.Posix.open(Native Method) 04-11 22:13:14.899: W/System.err(13833): at libcore.io.blockGuardOs.open(BlockGuardOs.java:110) 04-11 22:13:14.899: W/System.err(13833): at libcore.io.IoBridge.open(IoBridge.java:400)
这些是我的权限:@H_607_10@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
public static void SaveImageToMemory(Context context,Bitmap img,int rottenId) { Log.i("SAVE IMAGE","start save"); File sd = Environment.getExternalStorageDirectory(); File LOCATIOn = new File(sd.getAbsolutePath()+ "/myTomatoes/covers"); LOCATIOn.mkdir(); File dest = new File(LOCATIOn,rottenId + ".PNG"); try { Log.i("SAVE IMAGE","trying to save: " + dest.getPath()); FiLeoutputStream fos = new FiLeoutputStream(dest); img.compress(Bitmap.CompressFormat.PNG,100,fos); fos.flush(); fos.close(); } catch (IOException E) { Log.e("error",e.getmessage()); e.printStackTrace(); } }
用于创建File对象的所有混乱行都是我试用的结果…原始代码是:@H_607_10@
File LOCATIOn = new File(Environment.getExternalStorageDirectory() + "/myTomatoes/covers"); File dest = new File(LOCATIOn,rottenId + ".PNG");
我还尝试首先创建ByteArrayOutputStream并将Bitmap压缩为它,然后执行fos.write(mByteArrayOpStream.toByteArray())并且它不起作用.@H_607_10@
顺便说一句,我正在使用模拟器,但我也在几个“Galaxy S”上检查了这个并且发生了相同的错误…(当我尝试在手机或DDMS中浏览文件时,我可以看到它没有’甚至创建文件夹……@H_607_10@
以上是大佬教程为你收集整理的android – 将Bitmap写入外部存储(sdcard)全部内容,希望文章能够帮你解决android – 将Bitmap写入外部存储(sdcard)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。