Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我有一个org.w3c.dom.Document,想把它保存到我的文件系统中_Java_Pdf Generation - Fatal编程技术网

Java 我有一个org.w3c.dom.Document,想把它保存到我的文件系统中

Java 我有一个org.w3c.dom.Document,想把它保存到我的文件系统中,java,pdf-generation,Java,Pdf Generation,我用html文件创建pdf文档。 我想在创建后将其保存到文件系统中。 但我不知道如何保存它。。。你能帮我保存这份文件吗?这样就可以保存为pdf格式了 final DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); documentBuilderFactory.setValidating(false); DocumentBuilder builder = documentBui

我用html文件创建pdf文档。 我想在创建后将其保存到文件系统中。 但我不知道如何保存它。。。你能帮我保存这份文件吗?这样就可以保存为pdf格式了

final DocumentBuilderFactory documentBuilderFactory =  DocumentBuilderFactory.newInstance();
documentBuilderFactory.setValidating(false);
DocumentBuilder builder = documentBuilderFactory.newDocumentBuilder();
builder.setEntityResolver(FSEntityResolver.instance());

org.w3c.dom.document = builder.parse(new ByteArrayInputStream(result.getBytes("UTF-8")), "UTF-8");

baos = new ByteArrayOutputStream();

ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(document, null);
renderer.layout();
renderer.createPDF(baos);
out.println(baos.toString());
baos.close();

如果您所获得的代码据您所知是正确的,但只是写入了错误的位置(内存而不是文件),则只需使用
FileOutputStream

FileOutputStream output = new FileOutputStream(filename);
try {
    renderer.createPDF(output);
} finally {
    output.close();
}

如果您所获得的代码据您所知是正确的,但只是写入了错误的位置(内存而不是文件),则只需使用
FileOutputStream

FileOutputStream output = new FileOutputStream(filename);
try {
    renderer.createPDF(output);
} finally {
    output.close();
}

您已经有了使用ByteArrayOutputStream的代码(您创建了两次,没有明显的原因)-这生成了正确的数据吗?啊,很抱歉,第二个BAS是错误的,我将其编辑掉。。对printwriter在屏幕上返回正确的pdf,但我想保存它!然后将
ByteArrayOutputStream
更改为
FileOutputStream
。@jonsket创建一个答案,这样你就可以获得+25分。@Rockym:我想没有其他人回答了……你的代码使用了ByteArrayOutputStream(你创建了两次,没有明显的原因)-生成的数据正确吗?啊,对不起,第二个BAS是错误的,我将其编辑掉了。。对printwriter在屏幕上返回正确的pdf,但我想保存它!然后将
ByteArrayOutputStream
更改为
FileOutputStream
。@JonSkeet创建一个答案,这样您就可以申请您赢得的+25分。@RockyMM:我想没有人回答了。。。