LINUX.ORG.RU

История изменений

Исправление slovazap, (текущая версия) :

можно примеры на

1) Как в HTML: foo�bar�baz�

2) Как в C: foo\x00bar\x00baz\x00 или foo\0bar\0baz\0

hex и base64 превращают данные в кашу

base64 я правда зря вспомнил ибо он нередактируем, но если у тебя действительно бинарные-бинарные данные, то каша как раз получится при других способах, а лучше hex не придумать. Например:

FF 01 00 00  FF EF 01 00   42 A7 CF 01  FF 1F FF 1F

Тут даже не зная структуры данных я вижу скорее всего 3 32-битных и 2 16-битных little endian числа и могу их без проблем поправить если знаю что мне нужно. Да, я разбил их на тетрады пробелами как делают hex редакторы, но даже со смещением границы полей видно по нулям. Говорю как человек расковырявших много бинарных форматов руками.

и вообще занимают много места. И cpu time тоже.

Если тебя волнует место и cpu time, то тебе уже в бинарные форматы. Если данные такого объёма что место и время (де)сереализации ощутимо, редактировать их точно будет невозможно.

Исходная версия slovazap, :

можно примеры на

1) Как в HTML: foo�bar�baz�

2) Как в C: foo\x00bar\x00baz\x00 или foo\0bar\0baz\0

hex и base64 превращают данные в кашу

base64 я правда зря вспомнил ибо он нередактируем, но если у тебя действительно бинарные-бинарные данные, то каша как раз получится при других способах, а лучше hex не придумать. Например:

FF 01 00 00  FF EF 01 00   42 A7 CF 01  FF 1F FF 1F

Тут даже не зная структуры данных я вижу скорее всего 3 32-битных и 2 16-битных little endian числа и могу их без проблем поправить если знаю что мне нужно.

и вообще занимают много места. И cpu time тоже.

Если тебя волнует место и cpu time, то тебе уже в бинарные форматы. Если данные такого объёма что место и время (де)сереализации ощутимо, редактировать их точно будет невозможно.