アプリ内のファイルの最後の2バイトをチェックして、それらが破損していないことを確認したい.jpg
rangeOfData:options:range:
良い選択肢のように見えますが、適切なものを入手する方法を見つけるのに苦労していますNSRange
。私が探している範囲は、終わり近くから終わりNSData
までです。
これが私がこれまでに持っているものです:
NSData *imageData = [NSData dataWithContentsOfFile:filePath];
NSRange range = {([imageData length]-8),[imageData length]};
NSString *str = @"FFD9";
NSData *jpgTest = [str dataUsingEncoding:NSUTF8StringEncoding];
NSRange found = [imageData rangeOfData:jpgTest options:NSDataSearchBackwards range:range];
これが私が得るエラーです:
**キャッチされなかった例外'NSRangeException'が原因でアプリを終了しています、理由:'***-[NSConcreteData rangeOfData:options:range:]:range {14954、14962} enxceeds data length 14962'
範囲を正しく取得して、最後の数バイトを検索するにはどうすればよいNSData
ですか?