测试序列化编码

问题描述:

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

在我的情况,我想验证一个XML结构被序列化为字节数组与UTF-8编码的字符长度可变。举例来说,我目前丑陋的过程是在序列化之前将已知需要两个字节的字符注入到结构中,然后用ASCII字符替换两个字节的字符并比较序列化的数组长度。这应该会产生两个序列化数组,其中包含两个字节字符的数组的长度应为+1。

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

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

这很好。 你说得对,我没有原始字符串,因为我正在测试一个将XML文档创建为字节数组的模块。我没有考虑将反序列化转换为具有预期编码的字符串。这将做到这一点。