1

NSData現在、 iOS アプリでを解析しようとしています。問題は、解析用の適切なヘブライ語エンコーディングが見つからないようです。Windows-1255エンコーディング (Windows のヘブライ語エンコーディング タイプ) またはエンコーディングを使用してデータをデコードする必要がありISO 8859-8ます。問題を解決するために私が持っている最も近いものは使用していました

CFStringConvertEncodingToNSStringEncoding(CFStringEncodings.ISOLatinHebrew)

それでもスローします'CFStringEncodings' is not convertible to 'CFStringEncoding' Encoding とEncoding に注意してください)。

データを正しくエンコードするにはどうすればよいですか?

ありがとう!

4

2 に答える 2

3

問題は、CFStringEncodingsに基づく列挙型CFIndex (つまり、 の型エイリアスInt) であるのに対して、CFStringEncodingは の型エイリアスであることですUInt32.ISOLatinHebrew したがって、値を明示的に次のように変換する必要がありますCFStringEncoding

let cfEnc = CFStringEncodings.ISOLatinHebrew
let enc = CFStringConvertEncodingToNSStringEncoding(CFStringEncoding(cfEnc.rawValue))
于 2015-01-09T14:13:35.697 に答える
0

手を少し汚す必要があったことがわかりました。CFStringEncodingsそれが file と関係があることがわかっCFStringEncodingsExt.hたので、ファイルを検索して助けを求めました。突然、私がCF_ENUM必要としているものを正確に含んでいる巨大なものに出くわしました-すべてがCFStringEncodingsそのUInt32価値によって!

それで判明したのはkCFStringEncodingISOLatinHebrew = 0x0208, /* ISO 8859-8 */

このエンコーディングの問題に直面しているすべての人に、そのファイルにアクセスして必要なエンコーディングを検索することをお勧めします。

于 2015-01-09T13:43:02.827 に答える