2013-03-26 5 views
7

Я только что локализовал файл Localizable.strings в моем проекте Xcode, чтобы локализовать свое приложение на нескольких разных языках. Однако, отредактировав каждый из файлов в стандартном формате «ключ = значение», я получаю следующую ошибку синтаксического анализа, которая не указывает файл, затрудняющий отслеживание того, на что он ссылается.Localizable.strings, вызывающий ошибку синтаксического анализа plist

CFPropertyListCreateFromXMLData(): Простой парсинг в старом стиле: отсутствует точка с запятой в словаре по строке 10. Анализ будет отменен. Перерыв на _CFPropertyListMissingSemicolon для отладки.

Я просмотрел каждый из * .strings файлов, в частности, в строке 10, и я не нашел никакого интереса или соображений относительно того, что вызывает проблему. Пожалуйста, скажите мне, где я ошибаюсь.

Вот пример файла Localizable.strings в моем проекте. Все остальные файлы соответствуют одному и тому же формату.

"Enter URL" = "Voer adres in" 
"Headers" = "Koppen" 
"Key" = "sleutel" 
"Value" = "waarde" 
"Parameters" = "Parameters" 
"Tap to add a new line" = "Tik om een nieuwe lijn toe te voegen" 
"Perform request" = "Verzoek Uitvoeren" 
"Response" = "Antwoord" 
"Received Headers" = "Ontvangen Koppen" 
"Error" = "Fout" 
"Loading" = "Verzoek aan het versturen" 

Затем я использую NSLocalizedString(), чтобы предоставить переведенную строку.

ответ

19

Как указано в сообщении об ошибке, вам не хватает точек с запятой в конце каждой строки.

"foo" = "bar"; 

Является ли правильный формат

1

Это сообщение может быть также приходят за счет использования: (двоеточие) вместо; (точка с запятой) в конце строки. Убедитесь, что на каждом конце строки есть точка с запятой (;), а также нет двоеточия (:).

1
"Enter URL" = "Voer adres in"; 
"Headers" = "Koppen"; 
"Key" = "sleutel"; 
"Value" = "waarde"; 
"Parameters" = "Parameters"; 
"Tap to add a new line" = "Tik om een nieuwe lijn toe te voegen"; 
"Perform request" = "Verzoek Uitvoeren"; 
"Response" = "Antwoord"; 
"Received Headers" = "Ontvangen Koppen"; 
"Error" = "Fout"; 
"Loading" = "Verzoek aan het versturen"; 

это правильная формула

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