我必须使用一种方法从api中编写模型。
mode.write(OutputStream out);
目前我这样做是为了在console
上看到我的输出:
model.write(System.out);
但是,我想指定一个文件路径来将输出写入文件。
有关我如何处理此OutputStream
并将其更改为FileOutputStream
以将其写入文件的任何建议?
感谢您的回答!
答案 0 :(得分:1)
FileOutputStream
一个OutputStream
,所以你可以做到
model.write(new FileOutputStream("filename"));
请注意,您必须添加一些异常处理(FileOutputStream()
可以抛出FileNotFoundException
)。
答案 1 :(得分:1)
model.write(new BufferedOutputStream(new FileOutputStream(file)));
这是针对二进制数据的。如果需要文本(如使用System.out建议的那样),请查看是否存在
model.write(Writer out);
然后使用Writer将java文本(Unicode)转换为具有某种编码的二进制数据(字节)。 您也可以省略默认平台编码的编码,即对于计算机本地文件。
String encoding = "UTF-8";
model.write(new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(file), encoding)));