iphone - 检查 NSData 是否包含 NSString 的可能性

标签 iphone ios objective-c

我正在使用 NSData 存储来自网页的 XML。如果 NSData 包含 <?xml version="1.0"?> 是否可以检查它?

    NSURL *url = [NSURL URLWithString:link];
    NSData *data = [NSData dataWithContentsOfURL:url]; 

最佳答案

NSData 对象包含原始二进制数据。要评估它的内容,您首先需要将该数据转换为特定的数据类型——在您的例子中是一个字符串。您需要知道使用了哪种编码来转换数据对象。

然后就可以使用了

NSString *myXMLContent = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

现在您在该字符串中有了 XML 文件的内容,您可以根据需要对其进行评估。

NSRange range = [myXMLContent rangeOfString:@"whatImLookingFor" options:NSCaseInsensitiveSearch];
if (range.location != NSNotFound) {
//found the string

关于iphone - 检查 NSData 是否包含 NSString 的可能性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16439500/

相关文章:

iphone - Objective-C 属性 setter 如何发出失败信号?

ios - 覆盖 TLS 服务器验证主机名似乎不起作用

objective-c - AFJSONRequestOperation 失败,因为 web 服务返回内容类型为 text/html 的 JSON

ios - 使用 SDWebImage 而不是 AFNetworking 进行图像加载有很大优势吗?

iphone - 检查文档目录中是否存在文件名

ios - 在 Swift 中为 UIButton 设置自动布局约束

ios - Appcelerator - 将新 UDID 添加到配置文件后的 CodeSign 问题

iphone - 背景中的 UILocalNotification 响亮的声音

iphone - NSData 的 dataWithBytesNoCopy 和 writeToFile

iOS - 仅在修改后下载文件(NSURL 和 NSData)