我有一个文本文件,其中文本文件看起来像output.txt
| Component | Tests Run | Tests Failed |
|:-----------|:-----------:|:-----------------------------------------------|
| Server | 948 | :white_check_mark: 0 |
| Web Client | 123 | :warning: 2 [(see details)](http://linktologs) |
| iOS Client | 78 | :warning: 3 [(see details)](http://linktologs) |
在这里,我的工作目的是将所有代码推送到某个地方,以便使其像表格一样显示 我想从文本文件中读取所有文本,然后一起打印文本。
当前逐行打印
try {
FileReader reader = new FileReader("C:\\Users\\Zsbappa\\Pictures\\test\\output.txt");
int line;
while ((line = reader.read()) != -1) {
System.out.print((char) line);
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
任何建议都会很感激
答案 0 :(得分:2)
如果您使用的是Java 8或更高版本,请以流的形式阅读它们:
Files.lines(Paths.get("C:\\Users\\Zsbappa\\Pictures\\test\\output.txt")).forEach(System.out::println);
答案 1 :(得分:1)
尝试使用:
checknumbersinDecimals(new BigDecimal(String.valueOf(12.3)),new BigDecimal(String.valueOf(12.2)));
IOUtils类是Apache Commons IO的一部分。可以下载here。
答案 2 :(得分:1)
根据您的问题,您想一次读取所有文件 ,但只能逐行打印 < / strong>。我不确定您为什么要这样做,但这应该可行:
try {
File file = new File("C:\\Users\\Zsbappa\\Pictures\\test\\output.txt");
FileInputStream fis = new FileInputStream(file);
byte[] data = new byte[(int) file.length()];
fis.read(data);
fis.close();
String str = new String(data, "UTF-8");
String lines[] = str.split("\\r?\\n");
for (String line : lines) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
这对于大型文本文件而言效率非常低,并且会占用您的RAM,但这是我可以针对您的特定问题想到的最佳解决方案。
还请记住导入File
和FileInputStream
,因为它们是您正在使用的新的标准库依赖项。