在我的应用程序中,我添加了允许我将详细信息保存到txt file.
它工作正常,但我尝试在文件的顶部处仅一次向txt文件添加标题。
我得到的问题是它是在每一行产生的,而不仅仅是一次。
如何更改以下方法来解决此问题?
注意:header是活动中先前声明的字符串。
写入文件方法:
public void writeToFileEEGPower(String data){
boolean isHeader=true;
Time t= new Time();
t.setToNow();
int timeFileMinute= t.minute;
int timeFileDate= t.yearDay;
int timeFileYear= t.year;
//creating file name
String fileName= "Maths-" +timeFileMinute + timeFileDate + timeFileYear + android.os.Build.SERIAL;
//creating the file where the contents will be written to
File file= new File(dir, fileName + ".txt");
FileOutputStream os;
try{
boolean append= true;
os= new FileOutputStream(file, append);
String writeMe =data + "\n";
if(isHeader){
os.write(header.getBytes());
isHeader=false;
}
os.write(writeMe.getBytes());
os.close();
} catch(FileNotFoundException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
}
感兴趣的特定代码部分:
if(isHeader){
os.write(header.getBytes());
isHeader=false;
}
答案 0 :(得分:2)
public void writeToFileEEGPower(String data, boolean isHeader){
....
}
传入" true"标题和传入" false"在第一个之后的任何事情?
答案 1 :(得分:-1)
我能够按照评论和其他答案中的建议来解决问题。
基本上我在Activity的onCreate()方法中声明了布尔值:isHeader=true;
,并从writeToFileEEGPower()
方法中删除了它的声明。