2011-06-23 14 views
21

kłopoty z dostaniem NSString do konwersji bibliotece NSURL, item.image, posiada url do obrazu, który im się poprzez XMLNSString do bibliotece NSURL

NSString *urlString = [NSString stringWithFormat:@"%@", item.image]; 
NSURL *url = [NSURL URLWithString:urlString]; 

NSLog(@"string> %@ ", urlString); 
NSLog(@"url> %@ ", url); 

2011-06-23 11:18:49.610 Test[10126:207] string> http://www.harlemfur.com/images/Dog_Olive.jpg  
2011-06-23 11:18:49.611 Test[10126:207] url> (null) 

także jeśli próbuję:

NSString *urlString = [NSString stringWithFormat:@"%@", item.image]; 
NSURL *url = [NSURL fileURLWithPath :urlString]; 

2011-06-23 11:22:08.063 Test[10199:207] string> http://www.harlemfur.com/images/Dog_Olive.jpg 

2011-06-23 11:22:08.064 Test[10199:207] url> %0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20http://www.harlemfur.com/images/Dog_Olive.jpg%0A%20%20%20%20%20%20%20%20%20%20%20%20 --/
+0

nie można odtworzyć. Problem musi dotyczyć elementu item.image. Jaki to dokładnie rodzaj? – Eiko

+0

Czy te linie pojawiają się w kodzie? Bezpośrednio jeden po drugim (budowanie i rejestrowanie)? – Eiko

Odpowiedz

74

Dokonując URL od NSString, nie zapomnij, aby zakodować go pierwszy, więc spróbuj tego:

NSString *urlString = [NSString stringWithFormat:@"%@", item.image]; 
NSURL *url = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 
+0

dziękuję, ale to jest wydruk im coraz: 2011-06-23 11: 41: 34.796 Test [10609: 207] ciąg> http://www.harlemfur.com/images/Dog_Olive.jpg 2011-06 -23 11: 41: 34.797 Test [10609: 207] url>% 0A% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20% 20http: //www.harlemfur.com/images/Dog_Olive.jpg%0A%20%20%20%20%20%20%20%20%20%20%20%20 – user616860

+0

Następnie powinieneś sprawdzić swój przedmiot. na pewno nie ma ukrytej postaci. Przejdź do dokumentacji NSString, aby zobaczyć, jak przyciąć napis. – cxa

+0

miałeś rację, miałem dodatkowe spacje w moim xml, dzięki stary, działa jak amulet – user616860

2

Wszystko jest ok, jeśli chcesz uzyskać adres URL do drukowania w NSLog użyj:

NSLog(@"url> %@ ", [url absoluteString]); 
+2

Użytkownik * może * drukować obiekty bezpośrednio w Objective-C. Wywołuje metodę "opis". Działa dobrze z NSURL. – Eiko

1

item.image nie tylko zawierać adres URL, ale to zaczyna się od nowej linii i przestrzeni. Usuń te pierwsze i powinieneś czuć się dobrze.

0

w Swift:

NSURL(fileURLWithPath: item.image!) 
Powiązane problemy