2012-01-08 2 views
1

コードを開始//Objective-Cのバイト配列にJPGファイルを変換する私は、これは、このコードは、画像ファイル上のテキストファイルが、ファイルと正常に動作し、次のコードでJPGファイルを読み込み、バイト配列 に変換しようとしています

NSString *stringFromFileAtPath = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error]; 

if(stringFromFileAtPath == nil){ 
    NSLog(@"Error reading file at path %@\n%@", path, [error localizedFailureReason]); 
    } 
NSLog(@"Contents:%@", stringFromFileAtPath); 

NSData *bytes = [stringFromFileAtPath dataUsingEncoding:NSUTF8StringEncoding]; 
NSLog(@"Bytes:%@", bytes); 

コード

の//終わり、これは私が エラーメッセージを取得していますエラーメッセージです:テキストエンコーディングはUnicode(UTF-8)が適用されません。

はなぜだけでなく NSDataさん initWithContentsOfFile:方法使用し、私は私がやっているエラーまたはバイト配列

答えて

4

にJPGファイルを変換するためのコードが何であるかを知ってみましょうか!ここを参照してください:

すなわち:

NSData *bytes = [[NSData alloc] initWithContentsOfFile:path]; 
NSLog(@"Bytes:%@", bytes); 

あなたは何をしたか行うことができない理由は、あなたがそれであるかのように、画像ファイルを読み込むしようとしているということですUTF8でエンコードされていますが、その中にはUTF8で不正な形式のバイトが存在する可能性が非常に高いです。文字列ではありません。

+0

私は同じ問題があります。私はサイズが4.0メガバイトである.dbファイルを変換する必要があります。小さなファイルサイズのために私はurのコードを使用すると、それはfine.But私は4.1 MBのファイルを変換しようとすると動作します私のアプリがクラッシュします。私の問題の解決策や解決策はありますか?ありがとうございました – Poorna

関連する問題