2

i18n プロジェクトの一環として、プログラムで NIB ファイルから文字列を抽出する必要があります。もちろん、これは ibtool を使用して非常に簡単に実行できます。しかし、これはクロスプラットフォーム製品であり、NIB はその一部にすぎません。文字列の抽出を特定のマシンに固定したり、カタログ マージ スクリプトをまとめたりする必要がなければいいのですが。

これに対する需要はおそらく非常に低いので、それはロングショットだと思いますが、ibtool に代わるオープンソースのツールはありますか? パーサーを作成するのに十分信頼できる NIB 形式に関するドキュメントはありますか?

4

1 に答える 1

2

XIB を使用する場合、それらは単純な XML ファイルです。stringkey を持つ要素を探すだけですNSContents--export-strings-fileXML の構文解析に精通している場合は、ほとんどの言語でリバース エンジニアリングを行うのにそれほど時間はかかりません。

XIB に移動できない場合keyedobjects.nibは、バイナリ plist である を読み取ることができます。ポータブル リーダーの 1 つは、Perl 実装のplutil.plです。CFBinaryPlist.cでそれらを処理するために Apple のオープン ソース コードを確認することもできます。このようにする必要がある場合は、OpenCFLiteを見てください。Plist の読み取りと書き込みは、人々が移植可能な Core Foundation を使用する主な理由です。

于 2009-12-31T18:12:06.907 に答える