我目前正在开发一个框架,其中我们执行一些Java执行,截至目前我们必须手动编写java代码并执行它。为了让我们的生活更简单,我们正在尝试生成一个框架,其中用户将用简单的英语在文本文件中编写他必须执行的内容,例如 - Sum | 2+3
。现在我们已经在java类文件中定义了这些关键字的定义,如Sum,Divide,Product等。我们现在从1个文件夹中读取所有这些文本文件,然后由我们的代码执行其余的执行。
我们已经实现了上面提到的事情,但是现在执行后我们想要生成如下的报告 - 假设文件夹中有5个文本文件(文件编号是动态的) -
其中,无论代码是作为004的一部分执行的,都会抛出一些错误,但其余的都工作正常。
我们想要一个excel报告,将报告显示为 -
这在JAVA中怎么可能?我们使用缓冲文件阅读器来读取文件内容,然后将字符串拆分为" |" char然后相应地匹配/处理关键字
答案 0 :(得分:0)
由于你没有添加任何代码,我不能更具体,但你可以这样做:
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();
}
实质上,将用于处理文件内容的代码包装到方法中,并根据成功执行该方法或者是否产生运行时错误,将行添加到日志文件中。