2010-09-25 5 views
0

У меня есть JSON-строка, где я знаю, где проблема, я просто не могу понять, что делать. Я искал «запрещенные символы» в JSON-строке, но он просто не работает. Когда вы запускаете show-method для FBStreamDialog для iPhone, открывается представление о том, как это будет выглядеть, когда оно наконец будет опубликовано на стене.Проблемы с экранированными символами в строке JSON

Это происходит, когда «описание» - свойство в моей строке JSON жестко закодировано, например, «Тестирование». Но как только я добавить текст сгружен из источника данных, который выглядит, как это, он не работает:

  "description":" 

    LIVE: Uk's No:1 Reggae Singer Bitty Mclean + Joey Fever, Sthlms No:1 Reggae Voice. 

     DJs 
     Deejay Flash & Micke Goulos + Mc Fabulous G. 

     The Vinyl Bar 
     Up... 

" 

Примечание: я только показать «описание» -property из JSON-строки, потому что есть проблема.

Так что я пытался сделать, как я уже объяснял ранее, добавить строку «Тестирование» в «описание» -property. Это сработало. Но я хотел бы иметь свойство источника данных «описания», конечно. Так что я пытался заменить все символы, которые не письмо с этим кодом:

shortString = [shortString stringByReplacingOccurrencesOfString:@"&" withString:@"och"]; 
shortString = [shortString stringByReplacingOccurrencesOfString:@"+" withString:@"plus"]; 
shortString = [shortString stringByReplacingOccurrencesOfString:@"," withString:@"komma"]; 
shortString = [shortString stringByReplacingOccurrencesOfString:@"'" withString:@"apostrof"]; 
shortString = [shortString stringByReplacingOccurrencesOfString:@":" withString:@"colon"]; 

Выход что:

"description":"LIVEcolon Ukapostrofs Nocolon1 Reggae Singer Bitty Mclean plus Joey Feverkomma Sthlms Nocolon1 Reggae Voice. 

DJs 
Deejay Flash och Micke Goulos plus Mc Fabulous G. 

The Vinyl Bar 
Up... 

который выглядит как утверждаемая строка JSON?

Но, по-видимому, нет, потому что просмотр в facebook никогда не показывает, как это будет выглядеть, если я использую «описание» источника данных «-property». Он просто показывает текстовое поле «Что у тебя на уме».

Это сводит меня с ума.

+0

Я в отчаянии, что показывает. Просто попытался заменить номер «1» ... О, мой бог ...;) –

+0

Могу добавить, что я вообще не получаю сообщение об ошибке. –

ответ

2

Наконец-то!

Я понимаю, почему вы не ответили на этот вопрос. Как вы узнали, что соединение facebook не позволяет \ n в их StreamDialog's. Не для iPhone.

Таким образом, решение было замените \ n пробелом или любым другим, что вы хотите.

+0

Я думал, что у меня такая же проблема с экранированием, но получается, что я работал после того, как я удалил \ n. Спасибо за публикацию решения –