我正在使用以下代码写入文件:
File file = new File(getCacheDir(), "cachefile");
FileOutputStream fos = new FileOutputStream(file);
StringBuilder cachetext = new StringBuilder();
Iterator bri = brands.iterator();
Iterator bli = brand_id.iterator();
while(bli.hasNext()) {
cachetext.append(bli.next() + "|" + bri.next() + System.getProperty("line.separator"));
}
fos.write(cachetext.toString().getBytes());
fos.close();
这很好用 - 没有错误,文件最终包含我希望它包含的内容。但是,当我通过openFileInput()读取它时,我得到一个异常,告诉我不允许路径分隔符
FileInputStream fis = openFileInput(getCacheDir() + "/cachefile");
足够公平,包含斜杠,但我还能如何指定要打开的文件的路径?当然,必须有办法做到这一点,但我无法通过谷歌找到答案(“阅读”,“缓存”和“文件”不是最常用的术语......)所以我想我会尝试人性化。提前谢谢!
答案 0 :(得分:10)
你这样做的方式与创建输出文件的方式非常相似:
FileInputStream fis = new FileInputStream(new File(getCacheDir(), "cachefile"));