Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.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 Base64字符串到Json字符串_Java_Json_Spring Boot - Fatal编程技术网

Java Base64字符串到Json字符串

Java Base64字符串到Json字符串,java,json,spring-boot,Java,Json,Spring Boot,我目前需要通过API将PDF文件转换为Base64字符串来发送该文件。我已经测试了我的代码,并意识到它无法接受我的pdfBase64String变量中的内容 我试着打印pdfBase64String,但它没有显示任何内容。我试着解码回一个pdf文件,它可以工作,所以问题应该出在字符串本身。我能解决这个问题吗?我仍然希望以字符串形式发送它,而接收它的另一方将把它解码回pdf文件 ByteArrayOutputStream ba=loadPdf(文件名); String pdfBase64Strin

我目前需要通过API将PDF文件转换为Base64字符串来发送该文件。我已经测试了我的代码,并意识到它无法接受我的
pdfBase64String
变量中的内容

我试着打印
pdfBase64String
,但它没有显示任何内容。我试着解码回一个pdf文件,它可以工作,所以问题应该出在字符串本身。我能解决这个问题吗?我仍然希望以字符串形式发送它,而接收它的另一方将把它解码回pdf文件

ByteArrayOutputStream ba=loadPdf(文件名);
String pdfBase64String=StringUtils.newStringUtf8(Base64.encodeBase64(ba.toByteArray());
System.out.println(pdfBase64String)//什么也看不出来
ApprovalReport ApprovalReport=新ApprovalReport(Long.valueOf(crisid),pdfBase64String);
URI URI=restTemplate.postForLocation(CMO_服务_URI+“/approvalReport/”,approvalReport,approvalReport.class);

您可以使用Base64.encodebase64字符串:

            String pdfBase64String = Base64.encodeBase64String(ba.toByteArray());

是否打印了
ba.toByteArray().length
?输出是什么?如果您尝试对图像的字节[]进行编码,这对JSON字符串不起作用。生成的字符串不是JSON格式,因此您会得到一个错误,即JSON字符串不是以
{开头。我查看了编码字符串,它是一个以
/
开头的非常长的数字。以防其他人试图将图像字节[]转换为
JSONObject`对象的字符串。