File UIWebView链接委托

File UIWebView链接委托,file,uiwebview,download,nsdata,File,Uiwebview,Download,Nsdata,我试图做的是创建一个应用程序,它将下载某些扩展名的文件(比如从我的FTP下载一个.mp3文件)。我想要一个委托方法来点击UIWebview中的链接,如果链接以“.mp3”结尾,请创建某种下载方法,将文件以自动文件名写入/Documents目录 有没有办法做到这一点?我到处寻找下载文件并将其写入/Documents目录,但没有找到答案 提前谢谢 是的,有: - (void)webViewDidFinishLoad:(UIWebView *)aWebView {

我试图做的是创建一个应用程序,它将下载某些扩展名的文件(比如从我的FTP下载一个.mp3文件)。我想要一个委托方法来点击UIWebview中的链接,如果链接以“.mp3”结尾,请创建某种下载方法,将文件以自动文件名写入/Documents目录

有没有办法做到这一点?我到处寻找下载文件并将其写入/Documents目录,但没有找到答案

提前谢谢

是的,有:

      - (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协议(

谢谢您的回复!该方法现在正在拾取链接-但由于某种原因,当我点击以.html结尾的链接时,它将不起作用-我将获得以下日志:设置电影路径:http://....mp3 ? 谢谢:)刚刚搜索了我所有的代码,它没有被记录在任何地方?我刚刚在互联网上搜索过,它看起来像是来自一个JavaScript音频播放器?有没有办法下载正在记录的文件?谢谢你,你是一个传奇!仍然出现设置电影路径错误-感谢您的帮助!你为我指明了正确的方向!:)此日志不是来自您的代码。或者它来自另一个文件,而不是您发布的文件。