[英]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.