問題タブ [vtd-xml]

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 投票する
1 に答える
525 参照

java - VTD-XML を使用して要素を削除した後、残りの改行を削除する

VTD-XML を使用して、親要素から一連の子要素を削除しようとしています。

残念ながら、要素を削除した後、削除された要素が以前占有していた新しい行が残ります。この動作は、VTD-XML の作成者による VTD-XML に関する記事の読者によっても確認されています。この新しい行を削除する方法を考えています。

基礎となる 64 ビット VTD トークンに格納されている長さの値を操作して、改行文字 (追加の 2 バイト) をカバーすることで、わずかな成功を収めることができました。コード スニペットは次のとおりです。

VTD-XML の例でold_cd.xml提供されているものでこれがうまく機能することをテストしました。ex_16

ただし、作業ファイルでこの同じアプローチModifyExceptionを試みると、 を呼び出そうとするとエラーがスローされます。modifier.output()具体的には によってスローされmodifier.check2()ます。

質問

1. 上記のアプローチがcheck2()失敗するのはなぜですか? VTD トークンのビットがオーバーフローしているとは思いません。ファイルは 2MB 未満です。更新を参照してください。
2.残りの新しい行を削除するためのより良い方法はありますか?

私はまだ VTD-XML にかなり慣れていないので、経験豊富なユーザーからアドバイスや洞察を得ることができれば幸いです。

ご協力いただきありがとうございます。

更新
うわー、この質問を書いている過程で、さまざまな文字エンコーディングを考慮するのを忘れていたことに気づき、長い値を1バイトに調整してcheck2()問題を修正しました! (時間をかけて一時停止し、問題を再考/書き出すもう1つの理由)。

これに対するより良いアプローチがあるかどうか、経験豊富なユーザーから知りたいです。

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

vtd-xml - VTD-XMLでは、既存の属性を持つタグに新しい属性を追加する方法は?

VTD-XML を使用して XML ファイルを更新しています。これで、要素の属性を維持する柔軟な方法を取得しようとしています。したがって、元の要素が次の場合:

これを次のように更新できるようにしたいと思います。

Map を使用してコード内の属性/値のペアを管理しています。XML を更新するときは、次のようにしています。

これは既存の属性を更新するために機能しますが、属性がまだ存在しない場合、挿入 (insertAttribute) にヒットし、「ModifyException」が発生します。

私の推測では、オフセットを直接操作していないので、これは予想されることです。ただし、要素内の位置 (最後) に an 属性を挿入する機能はありません。

私の疑いは、 xm.insertBytesAt(int offset, byte[] content) のようなものを使用して「オフセット」レベルでそれを行う必要があるということです-これは私が入る必要のある領域であるため、まだ計算する方法はありますか挿入できるオフセット (タグの末尾の直前)?

もちろん、私はここで VTD を何らかの形で誤用している可能性があります。これを達成するためのより良い方法があれば、喜んで指示されます。

ありがとう

0 投票する
0 に答える
183 参照

jasper-reports - ジャスパーの VTD-XML

VTD-XML を XPath エンジンとして使用した人はいますか? この組み合わせに関する参照が見つかりません。

JasperReports fillReportが遅すぎてリソースを消費する

VTD を使用する JRXpathExecutor のカスタム実装を作成する必要がありますか?

更新: いくつかの読書を行っています... このコンテキストで別の質問がありました (これについて新しい Q を開始したくありませんでした): JRXpathExporter インターフェイスは、XPath 式が指定されたときに NodeList が作成されることを想定しています。VTD-XML を使用して NodeList または Node を作成するのは、少し遠回りのようです。VTD-XML を使用して NodeList を作成できますか? するべきか?

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

java - VTD-XML による XML へのいくつかの要素の書き込み

1 つの親内に複数の要素を記述したいのですが、次のコードがあります。

および呼び出し方法:

しかし、代わりにこの結果:

私はこれだけを持っています:

writeElement毎回同じ要素を書き換えているようです。なぜこれが起こっているのですか、どうすれば修正できますか?

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

java - vtd-xml の jar ファイルを再構築すると、build.bat が「java_cup\parser.java:695: package java_cup.runtime does not exist」などのエラーをスローする

コンパイルしようとしているほぼすべてのファイルで、このようなエラーが発生します。このため、どのクラス ファイルも作成されていないため、jar は使用できません。

助言がありますか?

build.bat ファイルはまったく変更していませんが、とにかくここにあります。

提案されたパスはすべてそこにあります。

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

java - VTD-XML で大文字と小文字を区別しないモードで xpath を適用する方法

VTD-XML と Java を使用して、xpath を使用して XML ファイルを解析しています。大文字と小文字を区別しないモードで xpath を適用する必要がありますか? その方法を教えてください。