0

だから私は2つの配列を持っています:

1 つは HTML 予約文字を保持しています。もう 1 つは、それらを置き換えるエンティティを保持しています。両方の配列を辞書に配置しています

次に、辞書を反復処理し、HTML 予約文字のすべての出現箇所を適切なエンティティに置き換えようとしています。

NSArray * chars = [[NSArray alloc] initWithObjects: @"&", @"\"", nil];
NSArray * entities = [[NSArray alloc] initWithObjects: @"&", @""", nil];
NSDictionary * dict = [[NSDictionary alloc] initWithObjects:entities forKeys: chars];  

NSArray * keys;
NSUInteger i, count;
id key, value;

keys = [dict allKeys];
count = [keys count];

for (i = 0; i < count; i++) {
    key = [keys objectAtIndex:i];
    value = [dict objectForKey: key];

    _inputTextView.string = [_inputTextView.string stringByReplacingOccurrencesOfString:key withString:value];
}

私が抱えている問題

文字列が " 二重引用符の場合、" の代わりに " が出力されます。

なぜこれが起こるのでしょうか?

どんな助けでも大歓迎です!

4

2 に答える 2

1

それがまさに起こると予想されることです。それがあなたの望みでもあるようです。このメソッドは、"文字を HTML エンティティの対応する&quot;.

于 2012-10-18T20:04:28.380 に答える
-1

さて、あなたはあなたのアプリに置き換えるように言いました

\"

バックスラッシュなしの単一の二重引用符を意味します

"

とセミコロン。あなたのアプリは、あなたが指示したことをすべて実行します。あなたは何をしたかったですか?多分私たちはあなたを助けることができます。

于 2012-10-18T20:11:10.960 に答える