2017-05-03 338 views
1

我有一個字節[],裏面有一個文本(「#+#」爲byte [])。替換字符串[]

,我不能沒有它,因爲如果我這樣做:

String string = new String(array); 
string = string.replace("#+#","SOME STRING"); 
array = string.getBytes(); 

但問題是,數組是一個序列化文件的內容,另外還有一些沒有支持字節,因此陣列是非常不同的,那麼bevore編輯。

+0

什麼是前陣的價值觀和更換後? – nafas

+3

http://stackoverflow.com/questions/21906002/how-to-overwrite-a-specific-chunk-in-a-byte-array –

+0

什麼是序列化文件的編碼? – Marc

回答

2

明確顯示編碼您正在使用和使用的編碼的字符,如「拉丁-1」,其中所有的字節序列映射爲有效的Unicode字符:

String string = new String(array, "Latin-1"); 
string = string.replace("#+#","SOME STRING"); 
array = string.getBytes("Latin-1");