web-dev-qa-db-fra.com

Localizable.strings corrompu?

J'essaie d'inclure l'internationalisation de mon application et, uniquement à des fins de test, j'ai ajouté une simple ligne dans le fichier Localizable.string.

C'est tout mon dossier:

"Test locale" = "Test régional"

Et quand j'essaye d'exécuter mon application, j'obtiens cette erreur:

Localizable.strings: 0: erreur: la validation a échoué: les données n'ont pas pu être lues car elles ont été corrompues.

J'ai essayé de changer le "Codage de texte" en UTF-16 mais rien n'a été résolu.

Une idée?

Merci d'avance.

28
Paulo Rodrigues

S'il s'agit de l'ensemble de votre fichier, ajoutez un point-virgule à la fin. Changez le en:

"Test local" = "Test local";

56
pre

Pour obtenir des informations plus détaillées, vous pouvez utiliser l'utilitaire Property List à partir de la ligne de commande:

plutil -lint <your_strings_file>.strings

le commutateur -lint sert à vérifier la syntaxe. Si vous rencontrez une erreur, vous obtiendrez un numéro de ligne, davantage d’informations et, en général, de meilleures instructions pour résoudre le problème.

43
lucianoenrico

Vous pouvez vérifier votre fichier Localizable.strings avec ce script:

https://github.com/dcordero/Rubustrings

7
StuckOverFlow

Dans mon cas, c'était comme ça:

/* Comment for Very Long Sentence */
"Very Long Sentence Very Long Sentence Very Long Sentence Very Long Sentence " =;
"Very Long Sentence Very Long Sentence Very Long Sentence Very Long Sentence ";

(Notez le ' =; ' au lieu de ' = ' à la fin de la première ligne)

J'espère que ça aide quelqu'un ...

4
Nicolas Miari

Dans mon cas, c’était entre crochets dans la chaîne - je devais ajouter une barre oblique avant\".

1
Shmidt

J'ai fait un petit script pour vérifier les dossiers de fichiers entiers .strings en utilisant plutil.

https://github.com/CarlesEstevadeordal/check_strings

0