質問

Localizable.strings ファイルが何らかの理由で破損しており、復元方法がわかりません。

プレーン テキスト ファイルとして開くと、ここではコピーできない奇妙な文字で始まります。

ファイルをそのままにしておくと、アプリがビルドされます。変更を加えると、値が正しく解釈されないか、コンパイル時にエラーが発生します。

Localizable.strings: Conversion of string failed. The string is empty.
Command /Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copystrings failed with exit code 1

これはエンコーディングの問題ではないかと思われますが、どのようにして起こったのか (おそらく SVN が原因でしょうか?)、解決方法もわかりません。ヒントをいただければ幸いです。

役に立ちましたか?

解決

あなたの問題と非常によく似た同じファイルに問題があります。私にとって何が起こるかというと、Xcode が正しいファイル形式を認識していないということです。プロジェクトを再配置するときによくこの問題が発生し、このファイルを削除して Xcode プロジェクトに再度追加します。ファイルを再度追加すると、エンコーディングが Western Roman のようなものに設定され、ASCII 以外をレンダリングできないようです。

問題を解決するために私が行うことは次のとおりです。

  • Xcode の [グループとファイル] パネルで Localizable.stings ファイルを選択します。

  • そのファイルについて「情報の取得」を実行します。

  • 情報パネルで「全般」タブを選択します。

  • そのタブで、「ファイル エンコーディング」に移動し、その値を変更します。

最後のステップでは、正しいエンコーディングを推測する必要があるため、ここにトリックがあります。ほとんどのヨーロッパ言語では「Unicode (UTF-8)」が機能することがわかりました。アジア言語の場合は、「Unicode (UTF-16/32)」を試してみるとよいでしょう。

他のヒント

私はセミコロンを忘れたので、

私はちょうどそのエラーが発生しました。それを把握するために私にしばらく時間がかかりました。本当にあいまいなコンパイラエラーのように思えるが、修正は簡単だった。

で確認してくださいファイルの-情報を見るには、UTF-16が選択されていること。それはその後、エンコードとしてnoneまたはUTF-8に設定すると、あなたはそれを変更する必要があります。あなたの文字がそれらの間にスペースを持っているなら、あなたはUTF-16などのファイルを「再解釈」することを選択しました。ファイルに変な文字がある場合は、それらを削除する必要があります。

Execpt UTF-8の問題、時にはあなたはまだいくつかの構文に問題がある場合、ケース内のコンテンツをチェックする必要があります。

を使用するラインで、あなたのテキストの行を確認するには、次の正規表現マッチしない任意の行があります場合は、問題がなければなりません。

"(+。?)" = "(+。?)";

あなたはplutilコマンドラインツールを使用することができます。オプションを指定しないか、-lintオプションでは、引数として与えられたファイルの構文をチェック。エラーがある場合には、より正確に教えてくれます。

右のファイルで欠落している引用符か何かではないがあるときに

これが私に起こります。私の言語ファイルを他のチームメンバーによって行われているので、最も一般的に、彼は引用符か何かを忘れる傾向があります。通常XCodeのは、そのライン上のエラーを示し、時にはそれがdoes'nt、ちょうど「破損データ」というエラーがスローされます。

ダブルチェック、すべての文字列が正しく引用符で閉じられている場合は、

Xcodeでファイルを開きます。

右プロジェクトナビゲータでそれをクリックします。

を選択として開く - > ASCIIプロパティリスト

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top