验证/测试文本字符串是否已序列化为具有特定编码的字节数组的最佳方法是什么?

就我而言,我想验证 XML 结构是否已使用可变字符长度的 UTF-8 编码序列化为字节数组。举个例子,我当前的丑陋程序是在序列化之前将已知需要两个字节的字符注入到结构中,然后用 ASCII 字符替换两个字节字符并比较序列化的数组长度。这应该产生两个序列化数组,其中包含两字节字符的数组的长度应为+1。

另外,如果解决方案对于 Java 来说是优雅的。我想不出任何优雅的方法来在字节数组中寻找字节序列。(可用于寻找表示 UTF-8 中所需字符表示形式的已知字节序列。)

有帮助吗?

解决方案

也许您可以使用已知的编码来反序列化字节数组,并确保 (a) 它不会抛出任何异常,并且 (b) 反序列化为原始字符串。从您对场景的描述来看,您可能没有现成的原始字符串。可能有办法创建它吗?

其他提示

那挺好的。你是对的,我没有原始字符串,因为我正在测试一个将 XML 文档创建为字节数组的模块。我没有考虑用预期的编码反序列化为字符串。这样就可以了。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top