如何在 Java 中覆蓋位元組陣列中某個特定塊?
Java 提供了一個 ByteBuffer 類,該類允許你使用其 wrap() 方法將陣列包裝到位元組緩衝區中。執行此操作後,你可以使用 position(): 選擇起始位置和 put(): 替換資料方法替換緩衝區的內容
示例
import java.nio.ByteBuffer; public class OverwriteChunkOfByteArray { public static void main(String args[]) { String str = "Hello how are you what are you doing"; byte[] byteArray = str.getBytes(); System.out.println("Contents of the byet array :: "); for(int i = 0; i<byteArray.length; i++) { System.out.println((char)byteArray[i]); } ByteBuffer buffer = ByteBuffer.wrap(byteArray); byte[] newArray = "where do you live ".getBytes(); buffer.position(18); buffer.put(newArray); System.out.println("Contents of the byte array after replacement::"); for(int i = 0; i<byteArray.length; i++) { System.out.println((char)byteArray[i]); } } }
輸出
of the byte array :: H e l l o h o w a r e y o u w h a t a r e y o u d o i n g Contents of the byet array after replacement :: H e l l o h o w a r e y o u w h e r e d o y o u l i v e
廣告