ローカルファイル(ドキュメントフォルダー内)のパスを提供するNSURL
オブジェクトがあります。 NSData
オブジェクトにこのファイルの内容を入力します。 dataWithContentsOfURL:
を使用してみましたが、これは失敗します。 iPhone SDK
がパスを返すため、ファイルが存在することを知っています。
ローカルファイルのNSData
からURL
オブジェクトを取得する方法を教えてください。
ありがとう。
// Given some file path URL: NSURL *pathURL
// Note: [pathURL isFileURL] must return YES
NSString *path = [pathURL path];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];
この作業を行うには、次を実行するだけです。
NSURL *imgPath = [[NSBundle mainBundle] URLForResource:@"search" withExtension:@"png"];
NSString*stringPath = [imgPath absoluteString]; //this is correct
//you can again use it in NSURL eg if you have async loading images and your mechanism
//uses only url like mine (but sometimes i need local files to load)
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:stringPath]];
UIImage *ready = [[[UIImage alloc] initWithData:data] autorelease];
ローカルURLが "file://"で始まっていることを確認してくださいこの場合、これを行う必要があります。
NSData *fileData = [NSData dataWithContentsOfFile:fileURL.path];
Swift3の場合、次のURLからの回答が役に立ちました
(phonegapプラグインを使用して画像をキャプチャした後、次のパスを取得していました
file:///var/mobile/Containers/Data/Application/B64B06DE-7976-45CF-9BE2-661F0F309A06/tmp/abcded.jpg)
https://stackoverflow.com/a/41043447/6383908
let videoURL = URL(string:urlString)、let let videodata = try? Data(contentsOf:videoURL){//ここにAlamofireのコードを追加}