8

次のリンクからオーディオファイルをダウンロードしたい

オーディオファイルリンク

私はこのサイトに掲載されている他の回答を試しました。しかし、私はASIHTTPRequestを使いたくないので、誰かがそのリンクコンテンツを私のドキュメントディレクトリにダウンロードする方法を教えてもらえますか。

4

2 に答える 2

5

さて、あなたはこのようなものを書くことができます:

//Download data
NSData *data = [NSData dataWithContentsOfURL:<YOUR URL>];

//Find a cache directory. You could consider using documenets dir instead (depends on the data you are fetching)
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *path = [paths  objectAtIndex:0];

//Save the data    
NSString *dataPath = [path stringByAppendingPathComponent:@"filename"];
dataPath = [dataPath stringByStandardizingPath];
BOOL success = [data writeToFile:dataPath atomically:YES];
于 2012-07-24T10:43:48.890 に答える
0

を使用してファイルをメモリNSURLConnectionにダウンロードしてから、ファイルに書き込むことができます。

[NSURLConnection sendAsynchronousRequest:[NSURLRequest requestWithURL:yourURL]
                                   queue:[NSOperationQueue mainQueue]
                       completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
                                              [data writeToFile:yourPath atomically:YES];
                                              // Audio file is ready to be played.
                                          }];

NSOperationQueue独自のインスタンスを作成して、バックグラウンドで書き込みを実行することもできます。

ファイルが大きく、ファイル全体をメモリに保持したくない場合は、を使用するか、を使用してディスクに直接書き込むことAFNetworkingで独自の実装を作成することもできます。NSOutputStream

于 2013-04-09T20:47:43.073 に答える