如何在 Java 中的字节数组中存储多个值



所以我目前正在尝试为我的 Java 应用程序保存和加载数据。现在我正在尝试将所有数据保存在一个大byte[]中,我可以使用 Base64 写入文件。我以前见过这样的东西,您可以在其中执行writeString(String s)将字符串写入byte[]并使用readString()byte[]中读取字符串。我想知道这究竟是如何工作的;如何将多个值写入byte[]并知道一个值何时结束,另一个值何时开始。使用整数很容易,因为它们具有固定的大小,但字符串是动态的,那么我如何查看byte[]中的字符串何时结束?

我已经设法使用ByteBufferOutputStream将数据写入byte[],现在我需要知道如何区分不同的值。例如,我可以在字符串的字节结束的地方插入一个0x0字节,以了解何时停止读取byte[]

指示

字符串结尾的0x00,或者您可以先存储字符串的长度,然后再存储数据字节。

最新更新