我要做的是创建一个可下载某些扩展文件的应用程序(比如我的FTP中的.mp3文件)。我想要一个用于在UIWebview中点击链接的委托方法,如果链接以“.mp3”结尾,则创建一种下载方法,将文件写入带有自动文件名的/ Documents目录。
有没有办法实现这个目标?我到处寻找下载文件并将它们写入/ Documents目录但没有答案。
提前致谢!
答案 0 :(得分:1)
是的,有:
- (void)webViewDidFinishLoad:(UIWebView *)aWebView
{
currentURL = self.webView.request.URL.absoluteString;
NSLog(@"Current URL %@", currentURL);
if ([currentURL rangeOfString:@"mp3"].location == NSNotFound) {
NSLog(@"string does not contain mp3");
} else {
NSLog(@"Found mp3");
//Do the download here
NSString *urlString = currentURL;
NSURL *url = [NSURL URLWithString:urlString];
NSData *urlData = [NSData dataWithContentsOfURL:url];
[urlData writeToURL:url atomically:YES];
if ( urlData )
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [NSString stringWithFormat:@"%@/%@", documentsDirectory,@"downloadedMP3.mp3"];
[urlData writeToFile:filePath atomically:YES];
}
}
}
不要忘记遵守.h文件中的UIWebView协议(<UIWebViewDelegate>
)