访问在内部存储中创建的文件

时间:2013-02-19 18:23:23

标签: java android

我决定使用内部存储将文件保存到文件夹中。我的代码是:

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 但是,我想检查文件是否包含输入的字符串,但我似乎无法找到创建的文件的位置。我试图输出文件的内容,但我失败了。我知道这听起来很荒谬。我想做的就是检查内容并知道是否创建了文件。有人可以帮忙吗?

2 个答案:

答案 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();
    }