将String转换为application / octet-stream Java

时间:2015-06-30 05:12:38

标签: java json inputstream

我正在编写一个带有embed jetty的服务器端应用程序,它接收来自第三方客户端的一些请求。客户端将一些小文件上传到服务器。但我很惊讶地看到客户端没有将文件数据上传为application / octet-stream,而是将json上传为application / json,其中包含有关该文件的所有元数据,并在字段中将所有数据作为字符串。举一个简单的例子

  

{       “_id”:“水果”,       “名字”:“水果”,       “_shasum”:“4954f1f8b4a8cbf9ea6b675face476f030cf7fbb”,       “tarball”:“http:// localhost:8585 / fruit / - / fruit-2.0.0.tgz”,       “_attachments”:{       “fruit-2.0.0.tgz”:{         “content_type”:“application / octet-stream”,         “data”:“mF6 / 622swKoG0kbVvS8qCyF5r48CuyiCO60Mcl / LnOyufzAEZ5xxxhn / IT4DO4Fr4QAMAAA =”,         “长度”:545       }}

现在的问题是如何将其转换为.tgz文件?我无法更改客户端,因此我必须使用此功能。

1 个答案:

答案 0 :(得分:4)

使用JSON解析器获取String

byte[] decoded = Base64.getDecoder().decode(data);
InputStream stream = new ByteArrayInputStream(decoded);