fileinputstream在java中访问并将数据写入现有文件
我有一个下面的类,它创建了一个。txt文件 并将数据写入该文件
package junitexport;
import java.io.FileWriter;
import java.io.IOException;
import org.junit.runner.JUnitCore;
public class ExecuteWithRunListener {
public static void main(String[] args) throws IOException {
String filename = "report.txt";
FileWriter fw = new FileWriter(filename,true);
fw.write("add a line");
fw.close();
JUnitCore runner = new JUnitCore();
runner.addListener(new ExecutionListener());
runner.run(MyUnitTest.class);
}
}
我的问题是如何从另一个类访问同一个文件
import org.junit.runner.notification.Failure;
import org.junit.runner.notification.RunListener;
import junitexport.ExecuteWithRunListener;
public class ExecutionListener extends RunListener
{
/*
* Called when an atomic test is about to be started.
*/
public void testStarted(Description dsc) throws java.lang.Exception
{
//I want to write additional data to the previous file here
}
}
BR
# 1 楼答案
使用OO原则。创建一个类来管理此功能。将代码从main移到公共方法中,并从两个位置调用它。 建议创建文件的方法和更新现有文件的方法
在单元测试源文件中,简单地为新创建的类创建一个新实例,并调用该实例上的方法对其进行测试