Android中使用file.createNewFile()无法创建文件的问题(例如保存拍照的图片到本地)
2017-11-08 17:12
696 查看
在写一个保存bitmap文件的方法的时候,遇到了题中问题。
为了不出现问题,不要直接
这样写会出现not found such file ...
首先先mkdir()创建根文件夹myfoodphoto,再使用file.createNewFile(),就可以了。
还需要权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
还有就是该方法会出现ignore this method 提示,但是目前好像还是可以用的。
为了不出现问题,不要直接
File f = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/myfoodphoto/" + path); f.createNewFile();
这样写会出现not found such file ...
首先先mkdir()创建根文件夹myfoodphoto,再使用file.createNewFile(),就可以了。
还需要权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
public String saveBitmap(Bitmap mBitmap) { String sdStatus = Environment.getExternalStorageState(); if (!sdStatus.equals(Environment.MEDIA_MOUNTED)) { // 检测sd是否可用 Toast.makeText(this, "内存卡异常,请检查内存卡插入是否正确", Toast.LENGTH_SHORT).show(); return ""; } String path = System.currentTimeMillis() + ".jpg"; File f = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/myphoto/"); if (!f.exists()) { f.mkdir(); } File file = new File(f, path); try { file.createNewFile(); FileOutputStream fOut = new FileOutputStream(file); mBitmap.compress(Bitmap.CompressFormat.JPEG, 100, fOut); fOut.flush(); fOut.close(); return file.getAbsolutePath(); } catch (IOException e) { e.printStackTrace(); return null; }
还有就是该方法会出现ignore this method 提示,但是目前好像还是可以用的。
相关文章推荐
- 读取资源图片保存在本地解决文件无法创建问题。
- Android开发——相册拍照_03.解决相机拍照之后部分手机无法将图片保存到路径或部分手机点击相机确定无法返回问题
- android 在Sdcard和本地创建文件保存图片
- Android学习之实现WebView中input="file"选择文件,处理选择图片无法返回类型问题
- java-createNewFile无法创建包含中文名路径文件
- Android 使用Bitmap将自身保存为文件,BitmapFactory从File中解析图片并防止OOM
- 快速浏览Silverlight3 Beta:使用SaveFileDialog保存到本地文件
- 内存溢出,无法创建新的本地线程的原因和解决方案 - java.lang.OutOfMemoryError: unable to create new native thread
- android 针对于GridView中的getView方法的bug,使用本地缓存来处理图片显示的问题
- VS保存和编译问题] 总是出现另一个程序正在使用此文件,进程无法访问
- C#使用File.Create创建文件后,报错另一进程正在使用该文件
- Android图像处理之Bitmap 生成图片 解析 保存文件 获取 问题
- 关于Android file.createNewFile() 方法出现的问题总结
- oracle的文件编辑器问题: SP2-0110: 无法创建保存文件 "afiedt.buf"
- c++test使用qt中的 mingw 创建pthread_create程序无法运行的问题
- android解决坚屏拍照和保存图片旋转90度的问题,并兼容4.0
- 快速浏览Silverlight3 Beta:使用SaveFileDialog保存到本地文件
- C#使用Create创建文件后,报The Process cannot access the file because it is being used by another process的异常
- C#使用file无法修改netware操作系统下的文件创建日期
- Silverlight3 :使用SaveFileDialog保存到本地文件