Юнити жалуется на ошибку в Json файле
Учу сериализацию данных с помощью json файла (примерно так должно называться). Хочу сохранять, ну, допустим, тексты заданий по информатике с их ответами. Json файл содержит следующий текст:
{
"all_tasks": {
"IT_task": [
{
"tasks": [
"В одной из кодировок Unicode каждый символ кодируется 16 битами. Вова написал текст (в нём нет лишних пробелов):
«Ёж, лев, слон, олень, тюлень, носорог, крокодил, аллигатор — дикие животные».
Ученик вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 16 байтов меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название животного.",
"В одной из кодировок Unicode каждый символ кодируется 16 битами. Ваня написал текст (в нём нет лишних пробелов):
«Уфа, Азов, Пермь, Белово, Вологда, Камбарка, Соликамск — города России».
Ученик вычеркнул из списка название одного из городов. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 22 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название города России.",
"В одной из кодировок Unicode каждый символ кодируется 32 битами. Алёша написал текст (в нём нет лишних пробелов):
«Ток, фата, шляпа, колпак, диадема, кокошник - головные уборы».
Ученик вычеркнул из списка название одного из головных уборов. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 24 байта меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название головного убора.",
"В одной из кодировок Unicode каждый символ кодируется 8 битами. Слава написал текст (в нём нет лишних пробелов):
«Уно, вист, нард, домино, реверси, мельница, монополия - настольные игры».
Ученик вычеркнул из списка название одной из настольных игр. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 10 байтов меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название головного убора."
],
"answers": [
"Тюлень",
"Соликамск",
"Фата",
"Мельница"
]
}
]
}
}
В юнити этот код я перевожу в класс со структурой all_tasks с помощью такого кода:
public void initializeTasksDictionaries ()
{
string path = Application.streamingAssetsPath + "/DataTask.game";
StreamReader reader = File.OpenText(path);
string jsonString = reader.ReadToEnd();
all_tasks = JsonUtility.FromJson<Tasks>(jsonString).all_tasks;
}
И получаю ошибку:
ArgumentException: JSON parse error: Invalid escape character in string. UnityEngine.JsonUtility.FromJson (System.String json, System.Type type) (at <1386288601af43018501cce2912f52f4>:0)...
То есть ошибка заключается в json файле, но там я ничего не нашел: все скобки на месте, все верные, запятые тоже...
Путем экспериментов, я выяснил, что ошибка появляется тогда, когда я добавляю перенос на новую строку? значит ли это в json файле я могу делать перенос строки только с помощью \n, но весь текст в файле писать в одну строку?
Ответы (1 шт):
Замените переводы на новую строку внутри строк (строка это то, что в "") на \n.