問題タブ [xml-twig]
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.
perl - XML::Twig を Perl 5.008003 でインストールできない
私のマシンには perl バージョン 5.008003 があります。CPAN を使用して XML::Twig をインストールしようとしていますが、次のエラーで失敗します。誰でも助けることができます。
私の環境にはすべてこのバージョンの perl があるため、最新バージョンにアップグレードすることはできません。このバージョンでのみ問題を修正する必要がありました。
ありがとう、
xml - XML::Twig を使用したファイル ハンドルの解析
XML::Twig のドキュメントで、parse($text)
スカラーを解析するための関数に xml テキストが含まれparsefile($fileName)
ていること、および xml ファイルを読み取って解析するための関数があることを確認しました。入力ストリーム (ファイル ハンドルまたは STDIN) を解析したいと思います。まだドキュメントを調べていて、何も見つかりませんでした。どうすればいいですか?
xml - XML::Twigコメント
別のタイプのXMLに変換する必要があるXMLドキュメントがあります。一部の情報は変換したいXMLにエンコードできないので、追加情報をコメントとして保存したいと思います。ただし、XML::Twigでコメントノードを作成する方法がわかりません。誰かが方法を知っていますか?
perl - XML::TWIG を使用した大きな xml ファイルの解析に失敗しました
XML::Twig を使用して大きな xml ファイル (約 100,000 レコード) を解析しようとしていますが、perl の解析はエラーで失敗します:
XML::Twig
問題なく大きなxmlファイルを解析することを読みましたが、私の場合は上記のエラーで失敗します。
私の .pl ファイルには、以下のように 100,000 回回転する forloop コードがあります。
forloop の中には、上記のように約 20 の if ループがあります。それはメモリの問題を引き起こしていますか?
このメモリの問題を克服する方法を誰かに教えてもらえますか?
perl - Perl XML::Twig は二重引用符をエスケープしません
XML ファイルを解析し、冗長な要素をいくつか削除し、.xml を使用して残りを新しい XML ファイルに書き戻す小さなスクリプトを作成しました$xml->print_to_file();
。
エスケープされたタグのテキスト内の"
二重引用符が現在は通常の二重引用符であることを除いて、すべて正常に機能します。escape_gt
この動作を防ぐための に似た構成が見つかりませんでした。二重引用符をエスケープしておくためのそのような構成または他の方法はありますか?
私の小枝の設定は次のようになります。
xml - XML::Twig: parsefile() は parse() よりも効率的ですか?
Perl でかなり基本的な webapp を作成し、.xml を使用して XML ファイルを処理しますXML::Twig
。XML::Twig
これらの XML ファイルはかなり大きく複雑なので、「一度にすべてをロードする」方法ではなく、意図的にチャンクごとに変更する方法を使用しています。
ただし、チャンク方式を使用している場合でも、大きな XML ドキュメントを読み込むと、この Web アプリケーションは完全にクラッシュして停止します。Web アプリケーションが 1and1.co.uk との共有サーバーでホストされており、Apache エラー ログ ファイルが表示されないため、これがなぜ起こったのかについての手がかりを得ることができませんでした。呼び出しをeval{}
ブロックにラップしても、死ぬのをキャッチできませんでした。厄介なことに、自宅の開発サーバーでは問題なく動作するため、問題を再現できませんでした。
それを機能させるために、parse()
メソッドを使用して XML 全体を含むスカラーを渡す代わりに、XML をファイルに書き込んで代わりに使用するように変更しましたparsefile( $filename )
。その変更を行ったところ、うまくいきました。
私はこれに少し混乱しています.Googleの驚異を介して、parsefile()
実際にそれがより効率的であるかどうかを調べようとしましparse()
たが、何も見つかりませんでした. 誰かがたまたま知っていますか?
perl - XML::Twig-行を検索して追加します
私はPerlを初めて使用し、これが私の最初のPerlプログラムです。ある種の自動化で編集する必要のあるXMLファイルがあります。
目標は、XMLファイルでこのスタンザを検索し、ユーザー入力を取得して、終了タグの後、ただし終了タグの前に追加して、タグを子としてxmlNamespaceAware=false
追加するこの出力を取得することです。<Alias>
perl - 名前空間宣言とプレフィックス名を含む XML::Twig で XML を作成する方法は?
XML::Twigを使用して、ゼロから新しい XML ドキュメントを作成しています。ルート要素には、プレフィックスと名前空間宣言が必要です。すべての子もこの名前空間に属し、このプレフィックスを使用する必要があります。
出力は次のようになります。
私はそれが次のように見えると思います:
これは簡単に思えるかもしれませんが、私はまだ Perl に慣れていないので、苦労しています。ご協力いただきありがとうございます!!!
perl - XML::Twig を bugzilla で設定するには?
xml ファイルから bugzilla db のバグをインポートしたいのですが、次のコマンドを実行した後にエラー メッセージが表示されます。
XML::Twig モジュールは、importxml.pl スクリプトを使用して XML バグをインポートするためにのみ必要であることがわかりました。
CPAN ダウンロード ページから XML-Twig-3.39 をダウンロードしました: http://search.cpan.org/dist/XML-Twig/
しかし、bugzilla で設定する方法がわかりません。
任意の助けをいただければ幸いです。
知っている人がいたら、あなたの知識を共有してください。
よろしく、
xml - Perl XML::Twig XML ファイルを別の XML で更新する
これが私の問題です。別のxmlを使用してxmlファイルを更新する必要があります
データ.xml:
Data2.xml :
したがって、Data2.xml からの情報で Data.xml を更新する必要があります。
私はこのコードを書きました。動作していますが、実行に 6 時間かかります。Data.xml はかなり大きいです (250mo)。
従業員番号は一意であるため、data2.xml のすべての要素を新しいファイルに書き込み、すべての従業員番号を配列に格納します。次に、data.xml を解析し、配列に存在しない限り、すべての要素を書き込みます。
この方法はまったく効率的ではありません。したがって、すべての data.xml を書き直す代わりに、配列 (したがって data2.xml) に存在する data.xml からすべての要素を削除したいと思います。次に、data2.xml から data.xml に要素を追加します。
私の問題は、XML Twig を使用して xml ファイルから要素を削除する方法が見つからないことです。
誰にもアイデアはありますか?
前もって感謝します、
サイモン。