【发布时间】:2014-07-20 15:26:39
【问题描述】:
我想从像 text.txt 这样的文件中读取特定的行,然后向其中写入一些字符串。有什么方法可以在android上做到这一点?我还在玩 LineNumberReader,但仍然找不到办法。
谢谢。
【问题讨论】:
我想从像 text.txt 这样的文件中读取特定的行,然后向其中写入一些字符串。有什么方法可以在android上做到这一点?我还在玩 LineNumberReader,但仍然找不到办法。
谢谢。
【问题讨论】:
为什么不使用 inputstream、bufferedreader、stringbuilder 和 outputstream 的组合?
【讨论】:
也许有人会遇到同样的情况..
private void Writing() {
// TODO Auto-generated method stub
try {
String[] lines = new String[888];
File internalStorage = Environment.getDataDirectory();
File dir = new File (internalStorage + "/myPde");
File file = new File(dir, "ekfslam.pde");
File file_temp = new File(dir, "ekfslam_temp.txt");
FileWriter fw = new FileWriter(file_temp,true);
BufferedWriter bw = new BufferedWriter(fw);
LineNumberReader lnr = new LineNumberReader(new FileReader(file));
file_temp.createNewFile();
int i = 0;
String Line = "";
while (true) {
Line = lnr.readLine();
if (Line != null) {
lines[i]=Line;
i++;
} else {
break;
}
}
for (int j = 0; j < 50; j+=5) {
lines[95] = lines[95]+"\n\t\t Data "+j;
}
if (file_temp.exists()) {
} else {
file_temp.createNewFile();
}
for (i = 0; i < lines.length; i++){
bw.write(lines[i]);
bw.newLine();
System.out.println(lines[i]);
}
file.delete();
file_temp.renameTo(file);
bw.close();
lnr.close();
} catch (Exception e) {
e.printStackTrace();
}
}
【讨论】: