Вопрос: С точки зрения стабильности программы и обеспечения фактической работы системы, насколько безопасно использовать символы типа ¦
, §
или ‡
для сложных последовательностей-разделителей в строках ? Могу ли я достоверно поверить, что я не столкнусь с какими-либо проблемами в программе, которая неправильно их читает?
Я работаю в системе, использующей код C #, в котором мне нужно хранить довольно сложный набор информации в одной строке. Удобочитаемость этой строки необходима только на стороне компьютера, конечные пользователи должны видеть информацию только после ее анализа соответствующими методами. Поскольку некоторые данные в этих строках будут коллекциями переменного размера, я использую разные разделители, чтобы определить, какие части строки соответствуют определенному уровню организации. Достаточно случаев, когда стандартные наборы;, | и аналогичных им подобных были исчерпаны. Я рассматривал разделители с двумя символами, как; # или; |, но чувствовал, что это будет очень неэффективно. Вероятно, нет такой большой разницы в производительности при хранении с одним символом по сравнению с двумя символами, но когда у меня есть возможность выбрать меньший вариант, просто неправильно выбрать больший.
Итак, наконец, я подумал об использовании набора символов, таких как двойной кинжал и раздел. Они занимают только один символ, и они определенно не будут отображаться в реальном тексте, который я буду хранить, поэтому они ни для чего не будут смущены.
Но кодировка символов привередлива. Хотя видимость для конечного пользователя не имеет смысла (поскольку он, по сути, не увидит его), я недавно стал беспокоиться о том, как программы в системе будут читать его. Строка хранится в одной базе данных, в то время как отдельная программа отвечает как за кодирование, так и за декодирование строки в различные типы объектов для работы с остальной частью приложения. И если ожидается, что что-то будет написано одним способом, возможно, будет написано другим, то, возможно, вся система выйдет из строя, и я не могу этого допустить. Так безопасно ли использовать эти типы символов в качестве разделителей фона?