Тестовая кодировка сериализации

Каков наилучший способ проверить / проверить, что текстовая строка сериализуется в байтовый массив с определенной кодировкой?

В моем случае я хочу убедиться, что структура XML сериализована в байтовый массив с кодировкой UTF-8 переменной длины символов. Например, моя текущая уродливая процедура состоит в том, чтобы ввести в код символ, для которого требуется два байта, перед сериализацией, затем заменить двухбайтовый символ на ASCII и сравнить длины сериализованного массива. Это должно привести к двум сериализованным массивам, где массив, содержащий двухбайтовые символы, должен иметь длину +1.

Плюс, если решение элегантно для Java. Я не могу придумать элегантного способа поиска последовательности байтов в массиве байтов. (Может использоваться для поиска известной последовательности байтов, представляющей желаемое символьное представление в UTF-8.)

11.08.2008 11:33:01
2 ОТВЕТА
РЕШЕНИЕ

Возможно, вы могли бы десериализовать байтовый массив, используя известную кодировку, и убедиться, что (а) он не выбрасывает никаких исключений, и (б) десериализация в исходную строку. Кажется, что из вашего описания сценария, вы можете не иметь оригинальной строки с готовностью доступны. Может ли быть способ создать его?

2
11.08.2008 11:46:40

Это хорошо. Вы правы, у меня нет исходной строки, так как я тестирую модуль, который создает XML-документ в виде байтового массива. Я не думал о десериализации строки с ожидаемой кодировкой. Это сделает свое дело.

0
9.01.2013 05:53:18