我正在使用NSData來存儲網頁中的XML。如果它包含<?xml version="1.0"?>
,是否可以檢查NSData?可以檢查NSData是否包含NSString
NSURL *url = [NSURL URLWithString:link];
NSData *data = [NSData dataWithContentsOfURL:url];
我正在使用NSData來存儲網頁中的XML。如果它包含<?xml version="1.0"?>
,是否可以檢查NSData?可以檢查NSData是否包含NSString
NSURL *url = [NSURL URLWithString:link];
NSData *data = [NSData dataWithContentsOfURL:url];
一個NSData
對象包含原始二進制數據。要評估它的內容,您首先需要將該數據轉換爲特定的數據類型 - 在您的情況下是字符串。您需要知道使用哪種編碼來轉換數據對象。
然後你可以使用
現在,你有你的XML文件中該字符串的內容,可以根據需要對其進行評估。
NSRange range = [myXMLContent rangeOfString:@"whatImLookingFor" options:NSCaseInsensitiveSearch];
if (range.location != NSNotFound) {
//found the string
感謝兄弟,讚賞 – nonuma 2013-05-08 11:55:10
NSString* str = [[[NSString alloc] initWithData:theData
encoding:NSUTF8StringEncoding] autorelease];
if (str && [str length] > 0){
NSLog(@"Contains string");
}else{
NSLog(@"Does't contains string");
}
我認爲'str'應該是你的代碼中的'newStr'?!? – Tobi 2013-05-08 11:44:21
你的意思是整個NSData只是編碼爲空字符串還是什麼? – 2013-05-08 11:33:55
@Artur XML正在被吃掉;我已經解決了這個問題。 – Simon 2013-05-08 11:35:27
那麼,你不能只是將其轉換爲字符串,然後檢查'[str rangeOfString:@「<?xml」]。location!= NSNotFound'? – 2013-05-08 11:37:41