关于FileFOutputStream应用中的FileNotFoundException问题

     在使用fileoutputstream时经常出现FileNotFoundException问题,即便是同一个程序(可行)改了一下包名再重新编译,就会无缘无故的抛出FileNotFoundException问题。这曾经困扰我好几个月,前几次都稀里糊涂的解决了,今天又出问题了,便下定决心解决了它。

        首先,要明确FileOutputStream并不会帮你创建不存在的路径,所以要先创建路径,再创建文件。

 
  1. File cacheDir = new File("data/data/com.kavinapps.androidk.pcexam/databases/");//设置目录参数  
  2.     cacheDir.mkdirs();//新建目录  
  3.     Log.i("copySd2phone","新建data/data目录成功");  
  4.     String filename;  
  5.     //获得文件名的长度  
  6.     filename = "carnum.db";   
  7.     Log.i("createNewFile","filename= "+filename);  
  8.     //文件名  
  9.     cacheFile = new File(cacheDir,filename);//设置参数  
  10.     cacheFile.createNewFile();//生成文件  
  11.     Log.i("createNewFile","生成文件成功"+cacheFile.getName());  
  12.               
  13.         output = new FileOutputStream( "data/data/com.kavinapps.androidk.pcexam/databases/carnum.db" );

        在以前,我往往只使用最后一行,有时候不会出错,但大多数时候行不通。

原文地址:https://www.cnblogs.com/tengqiuyu/p/6846650.html