我决定使用内部存储将文件保存到文件夹中。我的代码是:
File dir = new File (getFilesDir(), "myFolder");
dir.mkdirs();
File file = new File(dir, "myData.txt");
try {
FileOutputStream f = new FileOutputStream(file);
PrintWriter pw = new PrintWriter(f);
pw.println("Hi");
pw.println("Hello");
pw.flush();
pw.close();
f.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
tv.append("\n\nFile written to "+file);
显示的目录是data / data / packageName / file / myFolder / myData.txt 但是,我想检查文件是否包含输入的字符串,但我似乎无法找到创建的文件的位置。我试图输出文件的内容,但我失败了。我知道这听起来很荒谬。我想做的就是检查内容并知道是否创建了文件。有人可以帮忙吗?
答案 0 :(得分:0)
从文件中打开输入流并逐行读取。
FileInputStream f = new FileInputStream(new File(getFilesDir()+"/myFolder/"+"myData.txt"));
BufferedInputStream bis = new BufferedInputStream(fis);
DataInputStream dis = new DataInputStream(bis);
while (dis.available() != 0) {
System.out.println(dis.readLine());
}
答案 1 :(得分:0)
最后添加此代码,
try {
File file = new File(dir, "myData.txt");
Scanner sc = new Scanner(file);
while(sc.hasNext()){
System.out.println(sc.nextLine());
}
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}