Как я могу прочитать вводимый пользователем текст из текстового поля и записать его в текстовый файл в Xcode? - PullRequest
0 голосов
/ 07 ноября 2011

Есть ли способ записать строку, которая читается из текстового поля, в файл .txt?

NSString *input = [textfield text];

NSString *path = @"myText.txt";

[input writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:NULL];

Ответы [ 2 ]

2 голосов
/ 07 ноября 2011

Да, в конечном счете, - это путь;но есть ряд других шагов, которые вы делаете для того, чтобы пройти от начала до конца (вам необходимо иметь текстовое поле, подключенное к IBOutlet или каким-либо другим способом доступным; путь, в который myText.txt пишет в файл, должен быть доступен для записи, и поэтому выВозможно, вам понадобится более длинный и точный путь, чем просто имя файла; вам, вероятно, также потребуется отправить фактический параметр ошибки, который можно установить, чтобы вы могли посмотреть на ошибки, возвращаемые при первом сбое вызова writeToFileнесколько раз вы запускаете этот код).

1 голос
/ 07 ноября 2011

Вам нужно будет указать путь, в основном, куда сохранить файл. Этот код найдет папку документов

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

Вот код, который я использую для чтения и записи файлов.

-(void)writeFileToDisk:(id)data 
{ 
    NSArray *path = NSSearchPathForDirectoriesInDomains( 
            NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentDirPath = [path objectAtIndex:0]; 
    NSString *fileName = @"MyFileName.txt"; 

    NSString *fileAndPath = [documentDirPath stringByAppendingPathComponent:fileName]; 

    [data writeToFile:fileAndPath atomically:YES]; 
} 

-(void)readFileFromDisk 
{ 
    NSArray *path = NSSearchPathForDirectoriesInDomains( 
            NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentDirPath = [path objectAtIndex:0]; 
    NSString *fileName = @"MyFileName.txt"; 

    NSString *fileAndPath = [documentDirPath stringByAppendingPathComponent:fileName]; 

    NSArray *array = [[NSArray alloc] initWithContentsOfFile:fileAndPath]; 
    NSLog(@"%@",array); 
    [array release]; 
} 
...