說string
我轉換成byte[]
,然後我編碼的使用Base64
在作爲byte[]
說encodedByteArr
相同。使用下面的代碼:轉換字節[]的String表示回我有一個<code>String</code>可變的字節[]
String string = "Test";
byte[] encodedByteArr= null;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(check);
encodedByteArr= Base64.encodeBase64(bos.toByteArray());
oos.flush();
oos.close();
bos.close();
System.out.println("Encoded value is:- "+encodedByteArr);
輸出是:
編碼值是: - [B @ 5fd0d5ae
現在,我接收在另一種方法中相同的編碼值作爲String
,意思是:
String string = "[[email protected]";
而這只不過是一個String
我在上面的代碼中生成的byte[]
的表示。
現在我的任務是實際解碼值並取回原始文本,即。
爲此,我希望byte[]
的String
表示回到byte[]
而不失其完整性。
見https://stackoverflow.com/questions/409784/whats-the -simplest-way-to-print-a-java-array –
你實際上已經解決了你的問題(我認爲)。問題在於你以錯誤的方式打印數組......並且輸出使你認爲你做錯了。 –
你永遠不會解碼任何''B @ 5fd0d5ae'。您需要比默認的'toString()'更有意義的編碼。 – shmosel