[英]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.