問題タブ [nsxmlparser]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
2558 参照

iphone - NSXMLParser のリリース時に EXC_BAD_ACCESS がクラッシュする

[パーサー リリース] で断続的なクラッシュが発生しています。約 5% の確率で発生すると思いますが、解析しているデータはクラッシュごとに異なります。私は一生、理由を理解することはできません。

バグ レポートを Apple に提出する前に (運が良ければ、サンプル コードでは再現できません)、誰かこれに遭遇して、何が起こっているのか知っていますか?

[パーサー リリース] を指す gdb の「where」出力は次のとおりです。

助けてくれてありがとう!

0 投票する
3 に答える
5460 参照

iphone - NSXMLParser で使用するデータ型

NSXMLParser を使用して、リモート サーバーから XML データを解析しています。チュートリアルに従って起動して実行しましたが、作成しているオブジェクトにある (NSString *) メンバーはすべて問題ありません。また、次のような XML データから設定する必要がある整数もあります。

この場合、2 つの「子」オブジェクトを作成します。私は使用しています:

値の設定を委譲します。これが私の問題に到達する場所です。「NSString *name」メンバーは毎回正常に設定されますが、NSInteger を使用すると、「number」を設定しようとするたびに EXC_BAD_ACCESS が発生します。そこで、代わりに「int」を使用してみました。しかし、今はキー値プログラミングを使用できず、ノードを手動で探す必要があります。

これは大丈夫です。取得するノードがわかっているので対処できますが、さらに悪化します。チュートリアルのように currentElementValue が "NSMutableString *" の場合、文字列が正しいにもかかわらず、正しい整数が返されません。例えば:

そこで、currentElementValue を NSMutableString ではなく NSString にすると、適切な intValue を取得できます。しかし、それが NSMutableString である理由は次のとおりであることをオンラインで読みました。

値を設定するために使用されるデリゲートは複数回発生する可能性がありますが、通常は発生しません。だから私の質問は、私が間違っていることを誰かが知っていますか? これは NSXMLParser のかなり些細なケースのように思えるので、私が誤解しているものだと確信しています。

0 投票する
2 に答える
1521 参照

iphone - NSXMLParser はいつリリースされますか?

私はこのように NSXMLParser を使用しています:

p>

私の質問は、いつ NSXMLParser をリリースする必要があるかということです。解析が終了すると自動的に解放されると思います。これは本当ですか?はいの場合、計器は漏れがあることを示します。

アイデアはありますか?

ありがとう

0 投票する
3 に答える
140 参照

iphone - iphone開発

私はまだobjective-cが初めてです。NSXMLParser を使用して XML からデータを取得するアプリケーションを iPhone で作成したいと考えています。そのため、アプリケーションを起動すると XML が読み取られ、そこからデータが取得されますが、アプリケーションの実行中に XML が更新された場合、アプリケーションはどのようにしてそれを認識し、その更新データを取得できますか?それについて私を助けてください。

0 投票する
3 に答える
1335 参照

objective-c - NXXMLParserを使用したXMLドキュメント(UTF-8エンコーディング)の「Nestlé」という単語の問題。何か案が?

Objective-CでNSXMLParserを使用して、すべてUTF-8でエンコードされたXMLドキュメントを解析しています。1つのドキュメントには、文字列「Nestlé」が含まれています(のように...<title>Nestlé Novelties</title>...)。パーサーは終了し、「Nestle」という単語の末尾にフランス語の文字「e」が付いているため、エラーコード=9のエラーが報告されます。さらに、IE、Chrome、Safariを使用して、同じドキュメントを直接表示してみました。彼らは同様のエンコーディングエラーを報告しました。

すべての受信XMLドキュメントにUTF-8を使用しています。つまり、すべての<?xml version="1.0" encoding="UTF-8" ?>ドキュメントの先頭に「」が付いています。

これはエンコーディングの問題ですか?もしそうなら、どのようにこれを解決しますか?すべてのXMLドキュメントにどのエンコーディングを使用する必要がありますか?前もって感謝します!

バークレイ

0 投票する
1 に答える
1229 参照

cocoa - Cocoa: NSXMLParser - DTD で定義されたエンティティを解決する方法

私は NSXMLParser を使用して大きな XML ファイルを解析します。うまくいきますが :) パーサーに DTD からの外部エンティティを解決させることができません。

ドキュメントと古いメールをググって読みました...そして、 parser.shouldResolveExternalEntities = YES を設定しました

私は取得します: - (NSData *)parser:(AQXMLParser *)parser resolveExternalEntityName:(NSString *)name systemID:(NSString *)systemID しかし、何を返すかわかりません...エンティティはDTDで定義されています.. .

DTD のエントリの次の情報を得ることができれば、自分でテーブルを作成するだけです (void)parser:(AQXMLParser *)parser foundInternalEntityDeclarationWithName:(NSString *)name value:(NSString *)value;

それでも、NSXMLParser はエンティティ置換を行うべきではありませんか? 何とかして... :)

いずれにせよ、私は続行する方法についての手がかりがありません


相互投稿 @ cocoa-dev@lists.apple.com

0 投票する
1 に答える
122 参照

iphone - NSXMLParser を正常に停止しますか?

iPhone で XML を解析するのはまだ初めてなので、いくつか質問があります。

私の意見では、iPhone アプリがインターネットへのリクエストをできるだけ少なくする必要があるので、私が持っていたいくつかの XML を 1 つの大きな XML に結合しました。ただし、情報を解析すると、似たようなノード名がいくつかありますが (明らかに同じレベルではありません)、カスタム オブジェクトを解析しようとすると問題が発生します。

XMLをすべて結合したままにして、いくつかのノードの名前を変更する必要がありますか? または 2 つの XML 呼び出しを行いますか?

意見?