2009-07-23 10 views
6

Próbuję pracować katalogów. Niestety, gdy uruchamiam NSSearchPathForDirectoriesInDomains, otrzymuję katalog, którego nie można zapisać. Co pojawia się:Problem z NSSearchPathForDirectoriesInDomains

/Users/me/Library/Application Support/iPhone Simulator/user/Dokumenty

Kiedy uruchomić przykłady cudzych uzyskać:

/Użytkownicy/Me/Library/Application Support/iPhone Simulator/user/Programy/6958D21C-C94B-4843-9EF1-70406D0CA3A3/Dokumenty

który jest zapisywalny.

Fragment kodu używany jest

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSLog(documentsDirectory); 

Co muszę zrobić pozwoli mi uzyskać taką samą długą strukturę katalogów?

Odpowiedz

4

Ta długa ścieżka z GUID to ścieżka do dokumentów dla aplikacji i oczekiwane zachowanie.

Nie wiesz, co Twój kod wygląda, ale coraz ścieżkę do katalogu dokumentów Twojej aplikacji powinno być coś takiego:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 

(. Od Mark/LaMarche str 331)

+0

Tak właśnie zrobiłem. Oto porcja. Napisałem też szkieletową aplikację od podstaw i mam ten sam problem. NSArray * ścieżki = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES); NSString * documentsDirectory = [paths objectAtIndex: 0]; \t NSLog (documentsDirectory); –

+0

Mam wyjaśnione moje pytanie z fragmentem kodu. To dla mnie prawdziwa tajemnica. –

1

ponieważ wyszukuje " sprzeciwić się w indeksie: 0"

NSString *documentsDirectory = [paths objectAtIndex:0]; 

nie może być katalogiem zaczynający się od litery mniejszej niż «d» na dokumenty. Który staje się "obiektem na indeksie: 0". Wiem, że to może nie być możliwe, ale to też może być prawda.