2016-11-18 9 views
0

私はjsonで受け取ったテキストを解析していますが、NSXMLParserの関数パーサーがNSStringを受け取ると、終わりの単語が最後の単語で、次回の単語に次回の単語に参加するときに間違っています。独立した言葉。例えばObjective-cのNSXMLParserで改行を維持する方法は?

はテキストで:

こんにちは、これはNSXMLParserとテキストを解析する方法についての質問です、私 は、この問題を解決する必要があります。

これは、

すべてが正しい「こんにちは、これはNSXMLParserとテキストを解析する方法についての質問は、私は、ある」まず

機能パーサーは、テキストの行を受け取りますテキストを正しく追加するが、この行を受け取る: "これを解決する必要がある"

「こんにちは、これはNSXMLParserとテキストを解析する方法についての質問です、 ineedでは、対象は、この問題を解決する。」:そして、次の「私は」改行なしの追加テキストを分割

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string 
{ 
    ///Processing the text value of the current element 
    NSCharacterSet *characterSet = [NSCharacterSet whitespaceAndNewlineCharacterSet]; 
    NSString *text = [string stringByTrimmingCharactersInSet: characterSet]; 
    [_selfText appendString:text]; //Here append the string without line break 
} 

これはどのように私はこの問題を解決することができ、機能のですか?

答えて

0

あなたが投稿したコードは、パーサから取得したテキストの各ブロックから意図的に空白(改行を含む)を取り除いているので、あなたの質問はそれをやめる方法を尋ねます。

シンプルです。 stringByTrimmingCharactersInSetに電話してください。 foundCharactersでそれを使用することは、その呼び出しの間違った場所です。そこにテキストを追加して、何もしないでください。

最後のテキスト値から空白と改行を取り除きたい場合があります。それはいいです。それが完全に構築された後で_selfTextの最終値にstringByTrimmingCharactersInSetを呼び出してください。これはおそらくdidEndElementデリゲートメソッドで行う必要があります。

関連する問題