1

私の質問は私にいくらかの怒りを引き起こすかもしれないことを私は知っていました。しかし、自分の周りで起こっていることを知る方法は他にありません。

実際、私はよく書かれたObjectiveCコードに取り組んでいます。このコードは、パーサーを使用して、サーバーからのXMLファイルを解析します。パーサーとその機能について理解しようとすると、多くの混乱が生じます:(

  • Cocoaフレームワークにはいくつのパーサーがありますか?(適切なパーサーを使用することは私のインデントではありません)

  • アプリで使用されているパーサーを見つけるにはどうすればよいですか?

    私のアプリでは、.hファイルに1つの変数を定義しました。あれは、

    xmlParserCtxtPtr context;

    一部の関数は.mファイルで定義されています。彼らです、

    static void startElementSAX(...);

    static void endElementSAX(...);

    static void charactersFoundSAX(...);

    static void errorEncounteredSAX(...);

    static xmlSAXHandler simpleSAXHandlerStruct;

    そして彼らは輸入し<libxml/tree.h>た。

    ここで、彼らはどのパーサーを使用しましたか?

  • 私の最後の質問はFAQのみです。新しいことを学ぶための最良で美しい方法は、練習することです。しかし、それでも、パーサーを個別に説明して示すスマートなサンプルは見つかりません。(また、PCに保存されているローカルxmlファイルを解析するサンプルが見つかりません。)

前もって感謝します..

4

1 に答える 1

1
  • Cocoaフレームワークにはいくつのパーサーがありますか?
    最初の質問に答えるために、さまざまなxmlパーサーが利用可能です。私はあなたの特定の問題に適したものを選ぶためにこの読書を提案します。

  • アプリで使用されているパーサーを見つけるにはどうすればよいですか?あなたはすでにこの質問に対する答えを書いています。xmlParserCtxtPtr-パーサーを使用しています。

使用するローカルxmlファイルをロードするには

NSString* path = [[NSBundle mainBundle] pathForResource:@"Songbook" ofType:@"xml"];
NSURL *url = [NSURL fileURLWithPath:path];

次に、xmlParserをURLで初期化します。少し遅れるかもしれませんが、お役に立てば幸いです...

于 2012-10-24T21:30:36.197 に答える