Я десериализую некоторые JSON, используя фреймворк TouchJSON
. Массив словарей, который исходит от разбора, используется для заполнения UITableView
.Работа с <'null> 'значениями в TouchJSON
Существует вероятность того, что некоторые значения в анализе JSON I пусты. В результате, если я NSLog
его на консоль, в значениях, глядя, как это:
id = 1234;
title = "Hello, World";
description = "<null>";
detail = "The world says hello";
Здесь описание значение было пустая строка, извлекаемые с сервера.
Так TouchJSON признает, что значения описание имеет тип строки, но первоначальное намерение сервера было сообщить, что это была пустая строка, как description = @"";
Если я позже попытаться установить значение описания , до текстового свойства UILabels
, приложение будет аварийно завершено.
Итак, мои вопросы: у меня есть как NSNumbers, так и NSStrings в JSON, должен ли я пройти результат от десериализации метода TouchJSON и проверить все значения и как это сделать?
Я не могу имитировать, что произойдет, если значение NSNumber было пустым, как бы я мог проверить это? Будет ли значение NSNumber равным нулю в этом случае вместо «null»?
Привет, Грэм, спасибо за предложение. Я не собирался переписывать часть сканера TouchJSON, поэтому вместо этого я зацикливаю возвращаемые данные и заменяю пустые строки на @ "", а пустые числа на 0. Я получаю это, потому что я имею дело только со строками и числами и мои данные попадают непосредственно в представления, которые отлично сочетаются с @ "". – RickiG
Грэм, какой файл у меня изменился? – Krishnan