I receive an UTF-8 encoded JSON String va REST web service and have to create a file from the data. The string is encoded in C# like:
UTF8Encoding encoding = new UTF8Encoding();
//fill object data
byte[] bytes = encoding.GetBytes(object.Serialize());
then I deserialize the JSON object and decode in java the data I need like:
requestData
is the JSON string
requestData = requestData.substring(requestData.indexOf("{")+1, requestData.lastIndexOf("}") - requestData.indexOf("{") -1).replace("\"","");
for(String s : requestData.split(",")) {
String[] pair = s.split(":");
if(pair[0].equals("data")) {
binaryData = pair[1].getBytes("UTF-8");
}
}
return binaryData;
binaryData
should be a byte array
representing a .docx
file. But when I write the byte array
into a file
and download this, the downloaded file can be opend but the text of the file is just the byte array
like that.
UEsDBBQABgAIAAAAIQCuDuWM4wEAANMIAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0ls1u2zAQhO8F8g4Cr4FEJ4egKCzn0KbHJkBdtFeaXFlERVIg17H99l1KtuAkqqVW8cWATM3Mx+XPan6/M1XyDD5oZ3N2k81YAlY6pe06Zz+WX9OPLAkorBKVs5CzPQR2v7j6MF/uawgJqW3IWYlYf+I8yBKMCJmrwdJI4bwRSI9+zWshf4s18NvZ7I5LZxEsphg92GL
any ideas what I'm doing wrong, best reguards.
EDIT:
I write the byte[]
into the file with
FileUtils.writeByteArrayToFile(dataFile, file);