18

アプリケーションをいくつかの異なる言語にローカライズするために、XcodeプロジェクトでファイルLocalizable.stringsをローカライズしました。ただし、各ファイルを標準の「キー=値」形式で編集すると、次の解析エラーが発生します。これはファイルを指定していないため、参照しているファイルを追跡するのが困難です。

CFPropertyListCreateFromXMLData():古いスタイルのplistパーサー:10行目のディクショナリにセミコロンがありません。解析は中止されます。デバッグするには、_CFPropertyListMissingSemicolonを中断します。

特に10行目の各*.stringsファイルを調べましたが、問題の原因については何の関心も考慮もありませんでした。どこが悪いのか教えてください。

これが私のプロジェクトの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()して翻訳された文字列を提供します。

4

5 に答える 5

42

エラーメッセージに記載されているように、各行の終わりにセミコロンがありません。

"foo" = "bar";

正しい形式ですか

于 2013-03-26T21:47:47.303 に答える
3
"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";

これは正しい式です

于 2014-02-05T21:24:42.830 に答える
1

このメッセージは、行末で;(セミコロン)の代わりに:(コロン)を使用しているために発生することもあります。行の両端にセミコロン(;)があり、コロン(:)もないことを確認してください。

于 2013-12-23T19:47:53.687 に答える
0

スウィフト4

Localizable.stringsのすべてのAppsファイルに1つ、複数のページが1つだけにならないようにしてください

local.string英語"hi"= "hi";

local.stringアラビア語"hi"="هاي";

を使用して

この拡張機能をアプリに追加します

extension String {
    var localizedLized: String {
        return NSLocalizedString(self, comment: "")
    }
}
于 2019-12-02T17:22:51.983 に答える
0

私の場合、エラーは引用符の欠落が原因でした。

"CFBundleDisplayName" = myTestApp";
于 2021-09-29T15:43:22.510 に答える