在 JAVA 中读取多个文件处理文本并生成报告
Reading Multiple files processing text and generating report in JAVA
我目前正在开发一个框架,其中我们确实执行了一些 java 执行,截至目前,我们必须手动编写 java 代码并执行它。为了让我们的生活更简单,我们正在尝试生成一个框架,用户可以在其中用简单的英语在文本文件中编写他必须执行的内容,例如 - Sum | 2+3
。现在,我们已经在 java class 文件中定义了这些关键字的定义,例如 Sum、Divide、Product 等。我们现在从一个文件夹中逐一读取所有这些文本文件,其余的执行由我们的代码相应地完成。
我们已经实现了上面提到的事情,但是现在执行后我们想要生成如下报告 -
假设文件夹中是否有 5 个文本文件(文件编号将是动态的)-
- 001
- 002
- 003
- 004
- 005
其中,作为 004 的一部分执行的任何代码都会抛出一些错误,但其余一切正常。
我们想要一个 excel 报告显示为 -
- 001 - 通过
- 002 - 通过
- 003 - 通过
- 004 - 失败 - 堆栈跟踪
- 005 - 通过
这在 JAVA 中怎么可能?我们正在使用缓冲文件 reader 读取文件内容,然后用“|”拆分字符串char 然后 matching/processing 相应的关键字
由于您没有添加任何代码,所以我无法提供更具体的信息,但您可以这样做:
try(BufferedWriter bw = new BufferedWriter(new FileWriter("report.txt"))){
for(File currentFile : filesToProcess){
try{
processor.processFile(currentFile);
bw.write(currentFile.getName() + " - Passed\n" );
}catch(Exception e){
bw.write(currentFile.getName() + " - Failed " + e.getMessage() + "\n");
}
}
}catch(IOException e){
e.printStackTrace();
}
本质上,将处理文件内容的代码包装到一个方法中,并根据该方法是成功执行还是产生运行时错误向日志文件添加行。
我目前正在开发一个框架,其中我们确实执行了一些 java 执行,截至目前,我们必须手动编写 java 代码并执行它。为了让我们的生活更简单,我们正在尝试生成一个框架,用户可以在其中用简单的英语在文本文件中编写他必须执行的内容,例如 - Sum | 2+3
。现在,我们已经在 java class 文件中定义了这些关键字的定义,例如 Sum、Divide、Product 等。我们现在从一个文件夹中逐一读取所有这些文本文件,其余的执行由我们的代码相应地完成。
我们已经实现了上面提到的事情,但是现在执行后我们想要生成如下报告 - 假设文件夹中是否有 5 个文本文件(文件编号将是动态的)-
- 001
- 002
- 003
- 004
- 005
其中,作为 004 的一部分执行的任何代码都会抛出一些错误,但其余一切正常。
我们想要一个 excel 报告显示为 -
- 001 - 通过
- 002 - 通过
- 003 - 通过
- 004 - 失败 - 堆栈跟踪
- 005 - 通过
这在 JAVA 中怎么可能?我们正在使用缓冲文件 reader 读取文件内容,然后用“|”拆分字符串char 然后 matching/processing 相应的关键字
由于您没有添加任何代码,所以我无法提供更具体的信息,但您可以这样做:
try(BufferedWriter bw = new BufferedWriter(new FileWriter("report.txt"))){
for(File currentFile : filesToProcess){
try{
processor.processFile(currentFile);
bw.write(currentFile.getName() + " - Passed\n" );
}catch(Exception e){
bw.write(currentFile.getName() + " - Failed " + e.getMessage() + "\n");
}
}
}catch(IOException e){
e.printStackTrace();
}
本质上,将处理文件内容的代码包装到一个方法中,并根据该方法是成功执行还是产生运行时错误向日志文件添加行。