试图写入文件,得到FileNotFoundException(只读文件系统)
问题描述:
所以基本上我有一个程序,利用Robotium在Android设备上运行测试,并且所有测试都很好。某些测试也有时间戳,我想将这些时间戳保存到一个文件中,以便我可以在别处使用它们,所以我写了一个简单的方法。试图写入文件,得到FileNotFoundException(只读文件系统)
public static void saveTimestamps(Timestamp ts) throws IOException {
FileWriter fw = new FileWriter(
"C:\\Users\\brendonn\\workspace\\TestProject\\timestamps.txt");
fw.write(ts.toString());
fw.close();
}
但对于使用此方法,我得到
java.io.FileNotFoundException每一个测试:/timestamps.txt(只读文件系统)
而且我不知道从哪里从这里出发。我没有试图写信给手机,我只是写了一个文本文件到我的电脑。我可以在这台计算机的其他课程中完成同样的工作,并且它可以工作。
答
就像我可以从快速浏览Robotium主页看到的一样,该工具在目标系统上运行!如果这是正确的,你的方法就是试图写入Android设备上的路径不存在的地方。
请注意,Robotium项目的首页讨论了从PC运行测试的未来功能。
您可以尝试将定时保存到目标设备上的某个文件(应用程序需要写入某处的权限),或者也可以将数据作为日志消息发送出去并在PC上捕获日志输出。
您无权在该目录中创建文件 –
您可以通过资源管理器创建文件吗? – RNJ
我不知道Robotium的工作原理。如果在您的Android项目中使用Robotium,则会出现此行为。您的Android设备不会识别路径C:\\等,因为这是您计算机的路径。尝试在您的设备中写入文件 –