NSStrings, C-строки, пути и кодировки в iPhone - PullRequest
1 голос
/ 28 апреля 2010

Я использую libxml2 в своем приложении для iPhone. У меня есть NSString, который содержит путь к файлу XML. Путь может включать не-ASCII символы. Я хочу получить строковое представление C для NSString для передачи на xmlReadFile(). Похоже, что cStringUsingEncoding дает мне представление, которое я ищу. Мне не ясно, какую кодировку использовать.

Интересно, есть ли в iPhone OS кодировка «по умолчанию», которую я могу использовать здесь и могу ли я использовать обходные пути не-ASCII.

1 Ответ

1 голос
/ 28 апреля 2010

Используйте NSString's fileSystemRepresentation. Если строка содержит символы, которые не могут быть представлены в кодировке файловой системы, этот метод вызовет исключение.

Чтобы преобразовать обратно, используйте NSFileManager's stringWithFileSystemRepresentation:length:

...