5
NSSet *subFolders = [_account subscribedFolders];
NSLog(@"subFolders: %@",subFolders);

出力:

...
    "[Gmail]/\U05d8\U05d9\U05d5\U05d8\U05d5\U05ea",
    "[Gmail]/\U05d7\U05e9\U05d5\U05d1" 
...

上記のテキストを元の言語 (ヘブライ語) で表示する方法はありますか?

私が試したこと:

  • デバッガーを LLDB から GDB に変更 - 機能しませんでした
  • 環境設定で確認 -> テキスト編集 UTF-* が選択されています

ありがとう

4

2 に答える 2

2

コンソールにユニコード文字を表示しても問題はないので、そもそも文字列がセットに入る方法だと思います。

サブフォルダー内のすべてのオブジェクトを次のように反復処理することをお勧めします。

 for( id object in [subFolders allObjects] ) {
    //Print out the name of the item explicitly
 }

これが機能しない場合でも、少なくとも文字列を直接操作できます。それでも印刷される場合:

"[Gmail]/\U05d8\U05d9\U05d5\U05d8\U05d5\U05ea"

エスケープされた Unicode 文字が送信されているように見えます。これをお勧めします: https://stackoverflow.com/a/7861345/352891 - これは NSSet の説明で直接機能する可能性があります

于 2013-04-17T13:04:41.380 に答える
1
 NSString* strOld=[NSString stringWithFormat:@"%@",responseObject];
NSLog(@"%@",[NSString
             stringWithCString:[strOld cStringUsingEncoding:NSUTF8StringEncoding]
             encoding:NSNonLossyASCIIStringEncoding]);
于 2015-02-06T09:21:05.047 に答える