如何检查是否给出了正确的链接

时间:2013-05-08 09:16:21

标签: ios objective-c nsdata

我正在从服务器下载XML文件,为此我使用以下代码:

NSURL *url = [NSURL URLWithString:link];
NSData *data = [NSData dataWithContentsOfURL:url];  // Load XML data from web

[data writeToFile:storePath atomically:TRUE];

现在我如何检查链接是否与XML正确链接?例如,如果他们填写www.google.com,那个来自该网站的数据将存储在NSData *data中。

我正在寻找一种检查用户是否提供正确链接的方法。

2 个答案:

答案 0 :(得分:1)

检查网址是否有效

- (BOOL)validateURL:(NSString *)url {
    NSString *urlRegEx =
    @"(http|https)://((\\w)*|([0-9]*)|([-|_])*)+([\\.|/]((\\w)*|([0-9]*)|([-|_])*))+";
    NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", urlRegEx]; 
    return [urlTest evaluateWithObject:url];
}

答案 1 :(得分:1)

就像你的XML链接在运行时生成而你想要检查它是否适用于XML

  if ([string rangeOfString:@".xml"].location == NSNotFound) {
          NSLog(@"No Xml Link Found");
        } else {
          NSLog(@"Xml Link Found");
        }

    Case 1: string = @"http://www.google.com";
    will Show this Log
              NSLog(@"No Xml Link Found");

    Case 2: string = @"http://www.google.com/live.xml";
    will Show this Log
              NSLog(@"Xml Link Found");
相关问题