我创建了一个文件,当我运行程序时,数据被写入文件,但是当我再次运行程序时,新数据覆盖旧数据。我需要一旦程序运行并收集数据,这些数据就可以彼此级联写入文件,而不会覆盖文件中的先前数据。
这段代码运行成功,但是当我再次运行程序时,会发生我不需要的覆盖,我需要将以前的数据保存在文件中,并很快在它旁边写入新数据。
public class MainActivity extends Activity {
File file;
String sdCard;
FileOutputStream fos;
OutputStreamWriter myOutWriter;
String FlieName = "Output1.txt";
EditText txtData;
Button btnWriteSDFile;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txtData = (EditText) findViewById(R.id.editText1);
btnWriteSDFile = (Button) findViewById(R.id.button1);
btnWriteSDFile.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
try {
file = new File("/sdcard/Output1.txt");
file.createNewFile();
fos = new FileOutputStream(file);
String eol = System.getProperty("line.separator");
myOutWriter =new OutputStreamWriter(fos);
myOutWriter.append(txtData.getText() + eol);// write from editor
myOutWriter.close();
fos.close();
Toast.makeText(v.getContext(),"Done writing SD 'Output.txt'", Toast.LENGTH_SHORT).show();
txtData.setText("");
} catch (Exception e) {
// e.printStackTrace();
Toast.makeText(v.getContext(), e.getMessage(),Toast.LENGTH_SHORT).show();
}
}
});
}
}