2013-06-25 5 views
1

Я пытаюсь скопировать содержимое XML-файла после выбора из NSOpenPanel в какао. Итак, скажем, этот XML-файл может быть любым, где на рабочем столе или в других каталогах. Как только я получаю файл Path, я пытаюсь прочитать/скопировать содержимое в NSMutableData, как показано ниже.Как читать содержимое XML-файла из NSOpenPanel

У меня есть Filepath:

NSString* filePath = [files objectAtIndex:0]; 

например: файл //localhost/Users/Me/Documents/XMLFiles/FileA.xml

Попытка получить содержимое и скопировать на NSMutableData

xmlData = [[NSMutableData alloc] initWithContentsOfFile:filePath]; 

или

xmlData = [[NSMutableData alloc] initWithContentsOfURL:[NSURL URLWithString:filePath]]; 
+0

Зачем вам нужен XML как необработанные данные ?! (Через NSData). Почему не как NSMutableString ?! Почему изменчиво вообще ?! Вы пытаетесь разобрать это ?! Что вы пытаетесь сделать с данными XML ?! –

+0

Какая у вас проблема с вашей помощью? –

+0

Я не могу получить содержимое файла из пути к файлу, должен ли файл находиться только в NSBundle? – ramo

ответ

1

Если вы действительно хотите, чтобы данные под NSMutableData форме, то следующий должен помочь вам:

NSMutableData *theData = [NSMutableData dataWithContentsOfURL:[[theOpenPanel URLs] objectAtIndex:0]]; 

Но я не думаю, что было бы очень полезно. Зачем использовать xml как необработанные данные? Это возможно!

Вы ищете строку, чтобы вручную просмотреть текстовый документ ?! Тогда, возможно, это то, что вы ищете: NSString's stringWithContentsOfFile:encoding:error

Возможно, вы захотите его разобрать ?! Тогда я предлагаю прочитать на NSXMLParser.

Смежные вопросы