問題タブ [stax]
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.
java - Java言語を使用してSTAXによる属性処理の値を取得する方法は?
属性がxmlファイルの複数の要素で繰り返されているため、インデックスを知らなくてもxmlファイルの属性の値を取得したい。
これが私のxmlファイルです
これがprocssingファイルです
よろしくお願いします。
アラア
java - stax - xml ノードを文字列として取得する
xml は次のようになります。
一度に 1 つの " " を処理するために stax を使用し<statement>
ていますが、それが機能しています。「123.xml」と「456.xml」を作成したり、アカウントでインデックス付けされたデータベース テーブルにロードしたりできるように、ステートメント ノード全体を文字列として取得する必要があります。
このアプローチの使用: http://www.devx.com/Java/Article/30298/1954
私はこのようなことをしようとしています:
java - Stax は Text+CDATA+Text を単一の CHARACTERS セクションと見なします
Stax を使用すると、次のような XML ブロックがあることに驚きました。
次のように扱われます。
つまり、CDATA と周囲のテキストは 1 つのテキスト要素にフラット化されます。CDATA 要素が検出されませんでした。
これは正しい動作ですか?空白を CDATA から分離するにはどうすればよいですか?
私はwoodstoxの実装を使用しています。
java - XMLEventAllocator のインスタンスを取得する方法は?
Sun のCursor-to-Event ExampleStAX
for Java EE 5 を使用してXML を解析する推奨される方法に従おうとしています。Cursor API を介して XML を走査し、必要に応じて を使用してを割り当てる必要があります。XMLEvent
XMLEventAllocator
厄介なことに、sun 自身の例はコンパイルされません (少なくとも JDK 1.6 では、1.5 コードに準拠していても)。この例では、アロケータを 経由new
でインスタンス化しようとしていますが、JDK の対応する実装クラスには外部からアクセスできません。
JavaDocs を読んで Web を検索した後、文字通り何も見つかりませんでした。
インターフェースをゼロから実装することもできXMLEventAllocator
ますが、完全に優れた実装が JDK にある場合は、専門家でないと正しく実装するのがStAX
難しいだけでなく、本当に間違っているように思えます。
xml - staxmate api を使用して要素を書き出す
私はstaxmateを使ってxml文書を書き出しています。「pre:elem」のようなプレフィックス/名前空間を使用して xml 要素を書き出したいと考えています。これを手動で "pre" + ":" + "elem" として構成し、staxmate api の addElement メソッドに渡すことができます。しかし、それを行うより良い方法はありますか?
java - StAX を使用して XML 文字列を読み取る
XML文字列を解析するために初めてstaxを使用しています。いくつかの例を見つけましたが、コードを動作させることができません。これは私のコードの最新バージョンです:
「イベント」と「reader.getElementText()」に監視を付けました。コードが停止したとき
「reader.getElementText()」の値が表示されますが、その行から離れるとすぐに評価できません。コードが停止したとき:
「要素」ウォッチは正しい値を表示します。最後に、コードをもう 1 行実行すると、次の例外が発生します。
status = reader.getText();
代わりに使用してみましたが、次の例外が発生します。
誰かが私が間違っていることを指摘できますか??
編集:
テストに使用する JUnit コードの追加:
xml - STAXパーサー-同じ入力ファイルのパフォーマンスに一貫性がない
xhtmlのすべてのテキストノードを処理するためにSTAXパーサーを使用しています。アプリケーションはUnixボックスにデプロイされます。解析操作は、最初に実行されるインスタンスに時間がかかります。2回目の実行では、比較的短時間で済み、その後の呼び出しでは、2回目の実行よりもはるかに短時間で済み、その後はほぼ一貫した結果が得られます。以下は私が使用しているコードです。同じ入力の解析にかかる時間に一貫性がない理由がわかりません。助けてください。
XmlInputFactoryの1回の作成(クラスレベルの静的メソッド)
同じ入力ファイルに対して一貫性のない異なる応答時間を与える解析コード、
java - ストリーミング方式で Java から XML を解析するより一般的な方法は?
非常に大きくなる可能性のある XML ファイルを効率的に解析する必要があります (したがって、ファイル全体をメモリに格納することはできません)。そのため、XMLStreamReader などのストリーミング技術を調べましたが、これらは非常に低レベルであり、非常にハードコードされたコードを生成するようです。
パーサーと解析対象をあまり密接に結び付けずにこれを行う方法を探しています。さらに、このコードは正しくないと感じています。これは、より真にイベント指向であるべきだと思われます。
何かアドバイス?
stax - 使用するstaxパーサーを指定する方法
クラスパスにwoodstoxとJava SE 1.6 staxパーサーがありますが、woodstoxがデフォルトで選択されているようです。ただし、デフォルトの Java stax パーサーを使用したい場合もあります。使用する実装を指定する方法はありますか?
java - Java XML:DOMとStAXを使用してドキュメントを作成する
StAXを使用して、を使用してXMLドキュメントを作成していXMLStreamWriter
ます。
ただし、私のドキュメントには、XMLStreamWriterのメソッドを1つずつ呼び出すことが難しい部分があり、DOMを使用して小さなドキュメントフラグメントを作成し、それを書き出す方が簡単です。
DOMの使用方法は知っていますが、ここに私の質問があります。Element
オブジェクトを取得して、それをに書き出す簡単な方法はありXMLStreamWriter
ますか?
2つの方法を「接続」する方法はおそらく理解できますが、面倒で、すでに何かが存在するはずです。(逆の方向に進むのは簡単なようです:http://blogs.oracle.com/venu/entry/constructing_dom_using_stax_writers)