我的问题是如何将一列数据附加到文本文件的末尾。我读取了需要向其添加数据列的文件并打印了此列,但无法将此列添加到(writer )文件。
我的代码如下
BufferedReader reader = new BufferedReader(new FileReader(filename1));
PrintWriter writer = new PrintWriter("file1.txt", "UTF-8");
String line;
while((line = reader.readLine()) != null){
String[] columns = line.split(",");
System.out.println("my column : "+ columns[numberoffeatures-1] );
}
一个例子:假设我有一个fileName1包含以下数据
A, B, C, D, F
1.0, -1.0, 1.0, 1.0, 1.0
0.0, 1.0, 0.0, 0.0, 1.0
1.0, 0.0, 1.0, 1.0, 2.0
1.0, 0.0, -1.0, -1.0, 2.0
0.0, 1.0, 1.0, 1.0, 1.0
-1.0, -1.0, 0.0, 1.0 , 2.0
经过一些处理,我得到了fileName2包含以下数据
B, D
-1.0, 1.0,
1.0, 0.0
0.0, 1.0
0.0, -1.0
1.0, 1.0
-1.0, 1.0
现在,我需要将F列从fileName1复制到fileName2的末尾,就像这样
B, D, F
-1.0, 1.0, 1.0
1.0, 0.0, 1.0
0.0, 1.0, 2.0
0.0, -1.0, 2.0
1.0, 1.0, 1.0
-1.0, 1.0,2.0
需要任何帮助。
答案 0 :(得分:0)
只需读取filename1每一行的最后一个字段,将列值附加到该行,然后将其写入filename2:
BufferedReader reader1 = new BufferedReader(new FileReader(filename1));
BufferedReader reader2 = new BufferedReader(new FileReader(filename2));
BufferedWriter bw = new BufferedWriter(new FileWriter(fileName2, false));
String line1;
while((line1 = reader1.readLine()) != null){
String[] columns = line1.split(",");
String line2 = reader2.readLine();
line2 += columns[columns.length - 1];
bw.write(line2);
bw.newLine();
}
reader1.close();
reader2.close();
bw.close();