lcsv文件行替换

时间:2012-03-14 13:05:24

标签: java

我正在创建一个csv文件,如下所示:

public class check
{
public static void main(String [] args)
{
   generateCsvFile("/RMT/test.csv"); 
}

private static void generateCsvFile(String sFileName)
{
try
{
    FileWriter writer = new FileWriter(sFileName,false);

    writer.write("DisplayName");
    writer.write(',');
    writer.write("Age");
    writer.write('\n');

    writer.write("MKYONG");
    writer.write(',');
    writer.write("26");

    writer.write("YOUR NAME");
    writer.write(',');
    writer.write("29");

    writer.flush();
    writer.close();
}
catch(IOException e)
{
     e.printStackTrace();
} 
}

这里我在文件中写了两行,但是当我写第二行时,我想替换第一行(标题)而不是追加它。我该怎么做?有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

我会将csv数据读入内存并进行计算,然后将结果写入文件。

如果它不会以某种方式对你有效:

  • 您可以加载要写入的文件,然后读取第1行(标题),然后追加新的计算数据集(在内存中),覆盖文件。

  • 如果标题是固定文本,则将其保存为变量,然后您不需要从文件中加载标题。

  • 如果您需要精确操作文件,请查看java.io.RandomAccessFile