[英]Annotation processor: file writing from the process() method
我写了一个注释处理器,我想将一些信息写到文本文件中。 在我的课堂上,我扩展了AbstractProcessor
并覆盖了
public void init(ProcessingEnvironment processingEnv)
和
public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv)
方法。
在init()
方法中,我正在创建一个新的PrintWriter
(例如,这种方式: writer = new PrintWriter("output.csv", "UTF-8");
)
我用它在process()
方法中将一些文本打印到文件中。
问题是,(当我在不同软件包中的多个源上使用处理器时)在处理新源时总是会重新创建文件( output.csv
)(因为每次都会创建一个新的Processor对象)。 这样,只有最后处理的源的信息获取到文本文件中,但我想从所有的注解的方法(从不同的源)到一个文本文件中获取信息。
这可能对您有帮助:
new PrintWriter(new FileOutputStream(“ output.csv”,true));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.