Reverse train. 2021-08-23 10:48 采纳率: 40%
浏览 434
已结题

将返回的pdf流生成本地文件

一个http请求返回pdf流,但是用下面方法,生成的本地pdf是空白的,该怎么读取这个流然后生成一个pdf文件呢

 InputStream content = responseEntity.getContent();
 file = new File("E:\\print"+ydbh+".pdf");
FileOutputStream fileOutputStream = new FileOutputStream(file);
 int temp;
 while ((temp = content.read()) != -1) {
     fileOutputStream.write(temp);
 }
 fileOutputStream.close();

EntityUtils.toString(responseEntity, "UTF-8");返回的是一个下面这样的
%PDF-1.4
%����
3 0 obj
<</Length 62/Filter/FlateDecode>>stream
x�+�r
�26S�00SI�r

�2R��*
endstream
endobj
1 0 obj
<</Type/Page/MediaBox[0 0 595 842]/Resources<</Font<</F1 2 0 R>>/ColorSpace<</CS/DeviceRGB>>>>/Tabs/S/Contents 3 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Parent 4 0 R>>
endobj
5 0 obj
[1 0 R/XYZ 0 852 0]
endobj
2 0 obj
<</Type/Font/Subtype/Type1/BaseFont/Helvetica/Encoding/WinAnsiEncoding>>
endobj
4 0 obj
<</Type/Pages/Count 1/Kids[1 0 R]>>
endobj
6 0 obj
<</Names[(JR_PAGE_ANCHOR_0_1) 5 0 R]>>
endobj
7 0 obj
<</Dests 6 0 R>>
endobj
8 0 obj
<</Type/Catalog/Pages 4 0 R/ViewerPreferences<</PrintScaling/AppDefault>>/Names 7 0 R>>
endobj
9 0 obj
<</Producer(iText� 5.5.13 �2000-2018 iText Group NV (AGPL-version))/CreationDate(D:20210820104611+08'00')/ModDate(D:20210820104611+08'00')/Creator(JasperReports Library version 6.0.0)>>
endobj
xref
0 10
0000000000 65535 f
0000000143 00000 n
0000000374 00000 n
0000000015 00000 n
0000000462 00000 n
0000000339 00000 n
0000000513 00000 n
0000000567 00000 n
0000000599 00000 n
0000000702 00000 n
trailer
<</Size 10/Root 8 0 R/Info 9 0 R/ID [<5ba6b8f0b5b4c07d5c3491137a44367f><5ba6b8f0b5b4c07d5c3491137a44367f>]>>
%iText-5.5.13
startxref
905
%%EOF

  • 写回答

2条回答 默认 最新

  • 曦陽惜夏 2021-08-23 11:53
    关注

    responseEntity.getContent() 只是获取流的上下文对象,并不是获取出来的直接就是文件

    MultipartHttpServletRequest multipartRequest = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class);
    MultipartFile img = multipartRequest.getFile("fileName");
    
    img.transferTo(new File(filepath+fileNmae));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月30日
  • 已采纳回答 7月22日
  • 创建了问题 8月23日

悬赏问题

  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥50 easyExcel模板 动态单元格合并列
  • ¥15 res.rows如何取值使用
  • ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发
  • ¥15 CSP算法实现EEG特征提取,哪一步错了?
  • ¥15 游戏盾如何溯源服务器真实ip?需要30个字。后面的字是凑数的
  • ¥15 vue3前端取消收藏的不会引用collectId
  • ¥15 delphi7 HMAC_SHA256方式加密
  • ¥15 关于#qt#的问题:我想实现qcustomplot完成坐标轴
  • ¥15 下列c语言代码为何输出了多余的空格