试图附加到文件,(我的代码似乎一直在创建一个新文件)

时间:2014-11-23 22:20:40

标签: java

I',尝试编写一个程序,然后将样本数据添加到文件中。没错,代码似乎每次都会创建一个新文件。该文件仅包含我写入的最后一个数据,而不包含之前的数据。

代码:

static void run2() {

    cGlobals.mBitTrex.FillMarketData();

    for(int ii=0;ii<4;ii++)
    {
        for(int i=0; cGlobals.mBitTrex.data[i]!=null; i++ )
    {
        cTicker prices=cGlobals.mBitTrex.data[i];
        String s="";
        s=Double.toString(prices.last)+","+Double.toString(prices.bid)+","+Double.toString(prices.ask);
        WriteFile( "gra"+prices.name+".txt", s);
    }
         System.out.println("Next Graph Point-" );
        try {
            Thread.sleep(10000);
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

//此函数似乎不断创建新文件,数据不会被添加到 //文件中的旧信息,文件只包含数据

static void WriteFile( String path, String data) {

try {


    File file =new File(path);

    //if file doesnt exists, then create it
    if(!file.exists())
        file.createNewFile();


    //true = append file
    FileWriter fileWritter = new FileWriter(file.getName());
        BufferedWriter bufferWritter = new BufferedWriter(fileWritter);
        bufferWritter.write(data);
        bufferWritter.write("\r" );
        bufferWritter.write("\n" );


        bufferWritter.close();

}catch(IOException e){
    e.printStackTrace();
}

}

1 个答案:

答案 0 :(得分:1)

通过在文件名后添加FileWriter来将true设置为追加模式:

FileWriter fileWritter = new FileWriter(file.getName(),true);