在写Android应用中使用createNewFile() 遇到open failed: ENOENT (No such file or directory) 错误,在网上查了许多方法,不过都不能解决个人问题,最后发现了问题所在,因此写一下总结。html
首先,总结一下网上广泛的解决方案:.net
一、层级目录问题 https://blog.csdn.net/zhouyingge1104/article/details/49612319xml
mkdir()没有发挥做用,应使用mkdirs();htm
二、权限问题 http://www.cnblogs.com/zzw1994/p/5021118.htmlblog
在API23+以上,不止要在AndroidManifest.xml里面添加权限,还要在JAVA代码中请求权限。file
以上就是网上广泛的解决方案,而个人问题是:权限
三、文件命名问题请求
经过createNewFile()也要遵照命名规范,若是包含了不合法的符号,也会报open failed: ENOENT (No such file or directory) 的错误。方法