0

インターネットから mp3 ファイルの長さを取得したいので、次のコードを使用します。

NSURL *url = [NSURL fileURLWithPath:@"http://view.33591.com:586/2012/11/30/11/4207369.mp3"];    
AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:url
                                            options:nil];
CMTime time = asset.duration;
float seconds = CMTimeGetSeconds(time);
NSLog(@"seconds:%f",seconds);

しかし、バンドルからローカルファイルにURLを変更すると、常に0が返されます.それを正しく行う方法はありますか?

4

1 に答える 1

1
NSURL *url = [NSURL fileURLWithPath:@"http://view.33591.com:586/2012/11/30/11/4207369.mp3"];

指定した URL はファイル システム パスではありません。[NSURL URLWithString:]代わりに使用し、クラスのドキュメント、特に使用しようとしているメソッドを読んでください。NSURL

fileURLWithPath:

新しく作成された NSURL オブジェクトを初期化し、指定されたパスを持つファイル URL として返します。

(私のものを強調)

于 2013-05-12T15:54:43.200 に答える