我需要检查文件中的行(对于某些字符)并显示格式错误的文件和行
Uncorrect expressions:
note1.txt line 2
note2.txt line 5
我的错误代码:
public static void main(String[] args) throws IOException {
for (int i = 0; i < args.length; i++) {
File input = new File(args[i]); // convert args to files
String resultStrings = ConvertToString(input); // converted to String lines
for (int k = 0; k < resultStrings.length(); k++) {
boolean isValid = CheckValid(resultStrings); //true - if necessary char compared, false if not
if (isValid) {
System.out.println("");
} else {
System.err.println("Uncorrect expressions:" + "\n");
System.out.println(%wrongfilename% + "line" + %wrongline%);
}
}
}
}
如何获取和输出错误的文件名和错误的行号?
由于
答案 0 :(得分:0)
你可以这样做 - 像(k + 1)这样的整数表达式会自动转换为字符串。请注意,(k + 1)将匹配用户的期望,因为人数从1开始而不是从0开始计算。
System.out.println("Incorrect expressions:\n");
System.out.println(" " + args[i] + " line " + (k + 1));
答案 1 :(得分:0)
System.err.println("Incorrect expressions:");
for (int i = 0; i < args.length; i++) {
String resultStrings = ConvertToString(new File(args[i]));
for (int k = 0; k < resultStrings.length(); k++)
if (!CheckValid(resultStrings))
System.out.println(args[i] + "\tline " + (k+1));
}
我假设您只想在顶部打印“错误的表达式”一次,而不是每次都找到错误的行。此外,这会在文件名和行号之间添加标签,但如果您愿意,只需将"\t"
替换为" "
即可。