Внешние системы могут использовать разные нотации JSON, могут считать те или иные символы недопустимыми и так далее. Для этих целей у конструктора ПараметрыЗаписиJSON и у самого объекта есть возможность управлять экранированием таких символов, как амперсанд, одинарные кавычки, разделители строк, слеш и угловые скобки. Кроме того, есть возможность для строковых значений использовать одинарные кавычки вместо двойных.
Например, прямой слеш при записи в JSON не экранируется по умолчанию (листинг 1.15).
Листинг 1.15. Запись строки JSON без экранирования символов
…
Сообщение = Новый СообщениеПользователю;
// Записать строковое значение в JSON.
Запись = Новый ЗаписьJSON;
Запись.УстановитьСтроку();
Запись.ЗаписатьЗначение("путь к файлу C:/файл.txt");
СтрокаJSON = Запись.Закрыть();
// Показать результат.
Сообщение.Текст = СтрокаJSON;
Сообщение.Сообщить();
…
В результате выполнения приведенного выше фрагмента кода будет получена следующая строка (листинг 1.16).
Листинг 1.16. Результирующая строка без экранирования слеша
"путь к файлу C:/файл.txt"
Однако эту возможность можно включить (листинг 1.17).
Листинг 1.17. Запись строки JSON с экранированием символов
…
Сообщение = Новый СообщениеПользователю;
ПараметрыJSON = Новый ПараметрыЗаписиJSON( , , , , , , , ,Истина);
// Записать строковое значение в JSON.
Запись = Новый ЗаписьJSON;
Запись.УстановитьСтроку(ПараметрыJSON);
Запись.ЗаписатьЗначение("путь к файлу C:/файл.txt");
СтрокаJSON = Запись.Закрыть();
// Показать результат.
Сообщение.Текст = СтрокаJSON;
Сообщение.Сообщить();
…
В результате выполнения приведенного выше фрагмента кода будет получена следующая строка (листинг 1.18).
Листинг 1.18. Результирующая строка с экранированием слеша
"путь к файлу C:\/файл.txt"