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();
}
}
答案 0 :(得分:1)
通过在文件名后添加FileWriter
来将true
设置为追加模式:
FileWriter fileWritter = new FileWriter(file.getName(),true);