stringWithContentsOfURL:encoding:error:
を使用して Web ページのコンテンツを取得しようとしていNSUTF8StringEncoding
ます。問題は、Web ページに無効な utf-8 バイトがあるため、メソッドが nil を返すことです。無効な utf-8 バイトをどのように処理しますか?
私が試したこと。
- と のすべてのエンコーディングを使用してみまし
NSString.h
たCFStringEncodingExt.h
NSISOLatin1StringEncoding を使用して、無効なバイトを削除してから
[NSString stringWithCString:[str cStringUsingEncoding:NSISOLatin1StringEncoding] encoding:NSUTF8StringEncoding];
stringWithContentsOfURL:usedEncoding:error:
その結果、日本語の Unicode 文字が意味不明になります。
使用しているウェブページhttp://vgmdb.net/album/32234
iconv
無効な文字を使用するとEF BF BD
、16 進数のように見えます
`iconv -c -f UTF8 -t UTF8 32234.html`