Android:如何写入某一行,Java

时间:2014-04-06 13:54:26

标签: java android

大家好,谢谢,

我想知道如何用java编写java中的某一行。这是我的写法:

    public void saveLesson(int lessons2, int problem2, int mlessons2, int mproblem2, String checkAccuracy) {

    String newline = System.getProperty("line.separator");
    final String saved = new String(lessons2 + newline + problem2 + newline + mlessons2 + newline + mproblem2 + newline + checkAccuracy); 
        FileOutputStream fOut = null;
        try { // catches IOException below        
        fOut = openFileOutput("lessonStore.properties",
                Context.MODE_PRIVATE);
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
        OutputStreamWriter osw = new OutputStreamWriter(fOut); 

        // Write the string to the file
        try {
            osw.write(saved);
        /* ensure that everything is
         * really written out and close */
        osw.flush();
        osw.close();
        } catch (IOException e) {

            Toast andEggs = Toast.makeText(Lessons.this, "Error while writing...", Toast.LENGTH_SHORT);
            andEggs.show();
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

}

我如何才能让它只是覆盖第3行,而不是整个事情,因为这是为了保存变量,只需要保存一个而不是全部保存它们会很好。

1 个答案:

答案 0 :(得分:1)

  

我如何才能覆盖第3行

你没有

永远不要修改文件;如果你的线比原来短?怎么样呢?操作系统不会为您自动扩展/缩小文件!

将内容写入另一个文件,然后替换原始文件。