
JAVA新手提问
1个回答
展开全部
文件路径自己改:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
public class TextReader {
public static void main(String[] args) throws Exception {
FileReader reader = new FileReader(new File("test.txt")); // 输入文件
FileWriter writer = new FileWriter(new File("test1.txt")); // 输出文件
BufferedReader bReader = new BufferedReader(reader);
BufferedWriter bWriter = new BufferedWriter(writer);
String line = null;
String newLine = "\n";
ArrayList<String> output = new ArrayList<String>();
String subString = null;
String name = null;
String[] scores = null;
int sum = 0;
int max = 0;
while ((line = bReader.readLine()) != null) {
System.out.println(line);
if (line.equals("#4")) {
output.add(line);
}
else {
int index = line.indexOf("#", 1);
name = line.substring(0, index + 1);
subString = line.substring(index + 1);
scores = subString.split("#");
for (String score : scores) {
sum += Integer.parseInt(score);
}
if (sum > max) {
max = sum;
output.add(1, name + sum);
}
else {
output.add(name + sum);
}
sum = 0;
}
}
for (String finalResult : output) {
System.out.println(finalResult);
bWriter.write(finalResult + newLine);
}
bReader.close();
bWriter.flush();
bWriter.close();
}
}
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
public class TextReader {
public static void main(String[] args) throws Exception {
FileReader reader = new FileReader(new File("test.txt")); // 输入文件
FileWriter writer = new FileWriter(new File("test1.txt")); // 输出文件
BufferedReader bReader = new BufferedReader(reader);
BufferedWriter bWriter = new BufferedWriter(writer);
String line = null;
String newLine = "\n";
ArrayList<String> output = new ArrayList<String>();
String subString = null;
String name = null;
String[] scores = null;
int sum = 0;
int max = 0;
while ((line = bReader.readLine()) != null) {
System.out.println(line);
if (line.equals("#4")) {
output.add(line);
}
else {
int index = line.indexOf("#", 1);
name = line.substring(0, index + 1);
subString = line.substring(index + 1);
scores = subString.split("#");
for (String score : scores) {
sum += Integer.parseInt(score);
}
if (sum > max) {
max = sum;
output.add(1, name + sum);
}
else {
output.add(name + sum);
}
sum = 0;
}
}
for (String finalResult : output) {
System.out.println(finalResult);
bWriter.write(finalResult + newLine);
}
bReader.close();
bWriter.flush();
bWriter.close();
}
}
更多追问追答
追问
能给后面的加一点注释吗
追答
这个代码一目了然吧,你还有哪里不明白?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询