2012-01-30 43 views
-1

我有工作,這串:HTML NSString產生不同的值?

NSString* embedHTML1 = @"\<html><head>\<style type=\"text/css\">\body {\background-color:  transparent;\color: white;\}\</style>\</head><body style=\"margin:0\">\<embed id=\"yt\" src=\"http://www.youtube.com/v/leqL1QENRTI?version=3&amp;hl=en_US1\" type=\"application/x-shockwave-flash\" \width=\"287\" height=\"125\"></embed>\</body></html>"; 

其被放置到一個UIWebView工作正常,作爲一個嵌入式的YouTube視頻。

但是,我有一個FTP服務器,當我從服務器下載完全相同的字符串,並將其放置在一個的NSString像這樣:

NSString* embedHTML1 = [[NSString alloc] initWithFormat:@"%@", [link objectAtIndex:indexPath.row + startIndex]]; 
NSLog(@"%@", embedHTML1); 

[clip1 loadHTMLString:embedHTML1 baseURL:nil]; 

以上基本上是存儲在數組中的字符串。在上面的代碼中證明這是NSLog的輸出。

我得到的是一個UIWebView這是一個白色的屏幕,與「///」開始,以「/」在底部

Image showing contents of the array

我在做什麼錯結束?我很感激你的幫助,我不知道現在該做什麼。有什麼我失蹤的字符串?

回答

0

從服務器下載字符串時,不需要轉義字符,請刪除反斜槓。

該代碼將記錄HTML字符串沒有反斜槓:

NSString *htmlString = NSString* embedHTML1 = @"\<html><head>\<style type=\"text/css\">\body {\background-color:  transparent;\color: white;\}\</style>\</head><body style=\"margin:0\">\<embed id=\"yt\" src=\"http://www.youtube.com/v/leqL1QENRTI?version=3&amp;hl=en_US1\" type=\"application/x-shockwave-flash\" \width=\"287\" height=\"125\"></embed>\</body></html>"; 
NSLog(@"%@", htmlString); 
+0

你仍然需要轉義嵌入的雙引號,我認爲 – schtever 2012-01-30 23:45:53

+0

不,不,你不能。當你聲明一個內聯字符串時,他們只需要轉義,下載的字符串應該是你想要顯示的確切格式。除非他們需要以他們下載的格式(例如JSON)進行轉義。 – 2012-01-30 23:46:44

+0

*打額頭* - 當然!我正在看代碼碎片,並認爲你建議從字面上去掉反斜槓。對於那個很抱歉。 – schtever 2012-01-30 23:49:57

相關問題