アプリケーションの国際化を含めようとしていますが、テスト目的でのみ、Localizable.stringファイルに単純な行を追加しました。
これは私のファイル全体です:
"テストロケール" = "テストロケール"
そして、アプリケーションを実行しようとすると、次のエラーが発生します。
Localizable.strings:0:エラー:検証に失敗しました:データが破損しているため、データを読み取ることができませんでした。
「テキストエンコーディング」をUTF-16に変更しようとしましたが、何も解決しませんでした。
何かアイデアはありますか?
前もって感謝します。
これがファイル全体である場合は、最後にセミコロンを追加します。次のように変更します。
"テストロケール" = "テストロケール" ;
より詳細な情報を取得するには、コマンドラインからプロパティリストユーティリティを使用できます。
plutil -lint <your_strings_file>.strings
-lint
switchは構文をチェックするためのものです。エラーが発生した場合は、行番号と詳細情報、および一般的に問題の修正方法に関するより良い指示が表示されます。
次のスクリプトを使用して、Localizable.stringsファイルを確認できます。
私の場合、次のようになりました。
/* 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 ";
(最初の行の終わりにある '='ではなく '=;'に注意してください)
それが誰かを助けることを願っています...
私の場合、文字列内の角かっこでした—\"の前にスラッシュを追加する必要がありました。
Plutilを使用してフォルダ全体の.stringsファイルをチェックする小さなスクリプトを作成しました。