2010-09-30 15 views

Odpowiedz

51

Aby zapisać w pliku

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

[myArray writeToFile:filePath atomically:YES]; 

Aby odczytać z pliku

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

myArray = [NSArray arrayWithContentsOfFile:filePath]; 

myArray będzie zero, jeśli plik nie jest obecny. A NSDictionary ma podobne metody. Proszę sprawdzić odniesienie dla szczegółów tych metod.

+0

dzięki taskinoor, pozwól mi spróbować. – RAGOpoR

+4

@gef, czy jest jakaś praktyczna różnica między TRUE/FALSE a YES/NO? – taskinoor

+2

@taskinoor cześć, jak powinno być sformatowane "FILE_NAME"? czy możesz podać przykład, jaką nazwę pliku można użyć. – Bazinga

1

Możliwe, że możesz przekonwertować słownik na dane JSON.i zapisać go w pliku.

NSDictionary *dict = /* the NSDictionary/NSArray you need to write */ 

NSError *writeError = nil; 
NSData* data; 
data = [NSJSONSerialization dataWithJSONObject:dict options:NSJSONWritingPrettyPrinted error:&writeError]; 

if (!writeError) { 
    [data writeToFile:filePath atomically:YES]; 
}