2010-08-30 42 views
6

我遇到FileNotFoundException异常,当我试图让使用RandomAccessFile的文件:java.io.FileNotFoundException创建文件

RandomAccessFile file = new RandomAccessFile("/test.jpg", "rw"); 

我不现在如何来解决这个问题。这让我疯狂。

感谢

+0

您是否确实有权在文件系统根目录下创建文件?尝试只用'test.jpg' – 2010-08-30 03:47:34

+0

“/”有意外......我没有在代码中使用它。该应用程序应该在应用程序目录中创建文件而不是根目录。 – mlevit 2010-08-30 03:58:41

回答

7

尝试

RandomAccessFile file = new RandomAccessFile(new File(getFilesDir(), "test.jpg"), 
     "rw"); 
+0

谢谢队友。还有一件事...进一步下来我试图再次访问它转换为位图:bmImg = BitmapFactory.decodeFile(“wallpaperSwitch.jpg”);我再次遇到错误,那我该怎么做? – mlevit 2010-08-30 05:00:45

+0

位图bmImg = BitmapFactory.decodeStream(openFileInput(“wallpaperSwitch.jpg”));试试看。 – 2010-08-30 05:42:31

1

从文档:

FileNotFoundException异常 - 如果模式是“R”,但给定的文件对象不表示一个现有的常规文件,或者模式开始“RW”但给定的文件对象不表示现有的可写常规文件,并且该名称的新常规文件不能被创建,或者在打开或创建文件时发生其他一些错误

您能够建立这样的通过其他方式的文件?你是否在“/”表示根目录的环境中工作?

+0

我还没有尝试使用其他方式创建文件,但我假设我会得到相同的结果。 “/”是偶然的......请忽略它。 – mlevit 2010-08-30 03:56:49

1

时,我们只给出文件名

String fileName="Shiva.txt" 
String Directory = Environment.getExternalStorageDirectory() + File.separator + "OneSecondMoments" + File.seseparator + fileName 

例如实际上出现此错误:

RandomAccessFile randomAccessFile = new RandomAccessFile(fileName, "rw"); 

给整个目录的路径,例如

RandomAccessFile randomAccessFile = new RandomAccessFile(Directory, "rw"); 
+0

File.seseparator? – 2014-04-24 21:24:01

相关问题