簡體   English   中英

轉換為字節數組並返回后,文件不可讀

[英]File not readable after converting to byte array and back

我有一個.tar.gz文件,需要將其放入字節數組中才能將其放入IBM JMS隊列中。 問題是在轉換為字節數組后,當我轉換回文件時,我的文件不再可讀。 以下兩行代碼將文件讀入JMS消息,然后在以后將字節寫入文件。

Files.readAllBytes(Paths.get(file.getPath()))

Files.write(filename, message.getBytes(), StandardOpenOption.CREATE);

還有什么我需要做的,也許是與這項工作相關的格式? 在隊列中消耗消息的程序給了我這個錯誤(在打印出二進制文件之后)

is not a valid base64Binary.  A valid example is "AA==".

嘗試這個:

byte[] buf = Files.readAllBytes(Paths.get(file.getPath()));
buf = java.util.Base64.getEncoder().encode(buf);

這將對字節進行base64編碼,並且可能對您更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM