(二)java 生成文件,转multipartfile上传(本地不生成文件)--直接使用流进行传送

java 生成文件,转multipartfile上传(本地不生成文件)–直接使用流进行传送

对于一个菜鸟来说。这个本地不生成文件。我捯饬了两天才完成。累死我了呢。

	/**
     * 将pdf生成,并转为byte[]
     */
    public byte[] generatePdfToLocal(String fileString)
            throws IOException, DocumentException {
        if (fileString != null) {
            Document doc = new Document();
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            PdfWriter pdfWriter = PdfWriter.getInstance(doc, baos);
            doc.open();
            log.info("生成的合同" + fileString);
            InputStream input = new ByteArrayInputStream(fileString.getBytes());
            XMLWorkerHelper.getInstance().parseXHtml(pdfWriter, doc, input);
            doc.close();
            baos.close();
            return  baos.toByteArray();
        }
        return null;
    }
 
 	 //调用上面的方法得到byte[]数组
     byte[] file= this.generatePdfToLocal(htmlString);
	 MultipartFile multipartFile = new MockMultipartFile("","","application/pdf", file);

你可能感兴趣的:((二)java 生成文件,转multipartfile上传(本地不生成文件)--直接使用流进行传送)