приложение для iPad - создание текстового файла - PullRequest
0 голосов
/ 13 февраля 2012

Может ли кто-нибудь объяснить и привести пример кода для выполнения следующих действий в моем приложении для iPad:

  1. сделать некоторые вещи в моем приложении, которое генерирует некоторые данные (в виде строки)
  2. записать эти данные в текстовый файл
  3. сможете подключить мой iPad к компьютеру и отключить эти текстовые файлы

Как я могу это сделать?

1 Ответ

3 голосов
/ 13 февраля 2012

Для записи строки в файл используйте это

NSString *str = @"your string";
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* documentsDirectory = [paths objectAtIndex:0];
NSString* filePath = [documentsDirectory stringByAppendingPathComponent:@"data.txt"];
NSError *error;
[str writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:&error];

Затем установите ключ Application supports iTunes file sharing на YES в вашем файле plist.
Когда вы подключаете свое устройство к iTunes оттуда, вы можете сохранить data.txt
. Вот видео, как получить файлы из iTunes




Отредактировано по запросу.

NSUserDefaults *deflt = [NSUserDefaults standardUserDefaults];
//this number file is saved, I'm not saving the file name as data0.txt.
//The first file to be saved is data1.txt
int num = [deflt integerForKey:@"fileNameNum"]; 
num++;
NSString *fileName = [NSString stringWithFormat:@"data%d.txt",num];;
NSString *str = @"your string";
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* documentsDirectory = [paths objectAtIndex:0];
NSString* filePath = [documentsDirectory stringByAppendingPathComponent:fileName];
NSError *error = nil;
[str writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:&error];
if (error == nil) {
    //Save the number of the file that you have save in doc directory
    [deflt setInteger:num forKey:@"fileNameNum"];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...