問題タブ [xmltextreader]
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.
.net - .NET 1.1 の XMLTextReader
XML ファイルを読み取るプロセスがあります。XMLTextReader クラスを使用してこれを行います。これは、高速で転送専用の XML パーサー/リーダーであると想定されているためです。
1 メガバイトのテスト ファイルでは問題なく動作しますが、ライブ システムで 12 メガバイトのファイルを処理すると完全に停止します。
独自の XML リーダーを作成する以外に、これに対する解決策はありますか? それは世界の終わりではありませんが、可能であれば利用可能な標準コンポーネントを使用したいと思います
c# - パス内のハッシュ文字はDirectoryNotFoundExceptionをスローします
次のコードスニペットを検討してください
現在、これは次のようなパスを渡されたときに正常に機能します。
"C:\ Work Files \ Technical Information \ Dummy.xml"
しかし、渡されるとエラーをスローします
"C:\ Work Files \ #Technical Information \ Dummy.xml"
指定されたすべてのフォルダとファイルが存在し、ハッシュ文字がパスの有効な文字であることに注意してください。エラーの詳細は次のとおりです。
System.IO.DirectoryNotFoundException:パス'C:\ WorkFiles\'の一部が見つかりませんでした。
System.IO .__ Error.WinIOError(Int32 errorCode、String mayFullPath)
at System.IO.FileStream.Init(String path、FileMode mode、FileAccess access、Int32 rights、Boolean useRights、FileShare share、Int32 bufferSize、FileOptions options、SECURITY_ATTRIBUTES secAttrs 、String msgPath、Boolean bFromProxy)
at System.IO.FileStream..ctor(String path、FileMode mode、FileAccess access、FileShare share、Int32 bufferSize)
at System.Xml.XmlDownloadManager.GetStream(Uri uri、ICredentialscredentials)atSystem
。
System.Xml.XmlTextReaderImpl.OpenUrlDelegate(Object xmlResolver)の
Xml.XmlUrlResolver.GetEntity(Uri AbsoluteUri、String role、Type ofObjectToReturn
)
System.Threading.CompressedStack.runTryCode(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code、CleanupCode backoutCode、Object userData)
at System.Threading.CompressedStack.Run(CompressedStack CompressionStack、ContextCallback callback、Object state)
System.Xml.XmlTextReaderImpl.OpenUrl()
でSystem.Xml.XmlTextReaderImpl.Read()
でSystem.Xml.XmlTextReader.Read()で
誰が何が起こっているのか知っていますか?
wpf - WPF - XMLTextReader を使用して XML ドキュメントの値を検索する
わかりました別の WPF の質問です。まあ、これは一般的な .NET だと思います。URL から取得した xml ドキュメントがあります。
ドキュメントから複数の値を取得したい (天気データ、場所、その他の文字列)。
XmlTextReader を使用すると、メソッドを呼び出して値を取得できます。初めてメソッドを渡して xml ノードを検索し、値 (XMLTextReader オブジェクト) を取得すると、正しいデータが返されますが、その後 XMLTextReader が機能しなくなります。なぜそれが無効になるのかわかりません。そのため、FindTags... メソッドで以下の醜いコードを実行する必要があります。xtr (XMLTextreader) を find メソッドに渡し続けたいだけです。これが読者の性なのだろうか。毎回 URL にアクセスする必要もありません... それも間違っているようです。
助けて..これはすべて間違っているように感じます。
ありがとう。
Get WeatherFeed メソッド (抜粋)
c# - 大きな XML ファイル、XmlDocument は実行できませんが、検索できるようにする必要があります
.NET クラスをサポートする XPath で使用するには大きすぎる XML ファイルからノードを削除するための適切なロジック ループに苦労しています。
私が持っていた 1 行のコード (SelectNodes を XPath クエリ文字列で呼び出す) を、同じことを行うが XmTextReader を使用するコードに置き換えようとしています。
以前に使用した XPath クエリ (参照用) で示されているように、いくつかのレベルを下る必要があります。
これは面倒だけど簡単だと思いました。ただし、ループを正しく取得できないようです。
ノードを取得し、その下のノードをチェックして、値がターゲット文字列と一致するかどうかを確認し、一致する場合はさらに下に進み、一致しない場合はそのブランチをスキップする必要があります。
実際、私の問題は、ブランチに興味がない場合、ブランチを無視する方法がわからないことだと思います。要素名が一意ではないため (XPath クエリで示されているように)、関係のない分岐をたどることはできません。
私は、Profile ノードにヒットしたときに true に設定される bool expectedProfileName など、いくつかのブール値を維持できると考えました。ただし、それが必要な特定のプロファイル ノードでない場合、そのブランチから抜け出すことはできません。
だから...うまくいけば、これは誰かにとって理にかなっています...私は問題を数時間見つめてきましたが、明らかな何かが欠けているだけかもしれません.....
ファイルの一部を投稿したいのですが、構造が大まかにわかりません。
ProfileName、ScreenName、および SettingName がわかり、Setting ノードが必要です。
ファイル内の半分は使用されないため、アプリの起動時など、1 回のヒットでファイル全体を読み取らないようにしています。また、xmlファイルを生成するものを制御できないため、変更して複数の小さなファイルを生成することはできません。
どんなヒントでも大歓迎です。
アップデート
これで開き直りました。ポスターは、完璧なはずの XPathDocument を提案しました。残念ながら、これがモバイル アプリであり、XPathDocument がサポートされていないことについては言及していませんでした。
ファイルはほとんどの標準で大きくないため、システムはもともと XmlDocument を使用するようにコーディングされていました。現在 4MB であり、XmlDocument に読み込まれたときにモバイル アプリをクラッシュさせるのに十分な大きさです。ファイルがはるかに大きくなると予想されるので、おそらく今出てきたのと同じくらい良いでしょう。とにかく、私は現在 DataSet の提案を試みていますが、まだ他のアイデアを受け入れています。
更新 2
このサイズのファイルがシステムをクラッシュさせるとは思わないだろうと多くの人が言っているので、私は疑わしいと思いました. さらなる実験により、これは断続的なクラッシュであることが示されました。昨日は毎回クラッシュしましたが、今朝デバイスをリセットした後、再現できません。私は現在、信頼できる一連の生殖手順を見つけようとしています。また、まだそこにあると確信している問題を処理する最善の方法を決定します。アプリがこのファイルにアクセスできない場合、それは役に立たず、アプリの実行中にデバイスで他に何も実行できないことをユーザーに伝えることができないため、そのままにしておくことはできません... ....
c# - XmlTextReader - ファイルをロックしますか?
これはおそらく非常に単純なことですが、私はそれを見つけることができず、おそらく間違ったものを探しているだけです...
XmlTextReader --> 読んでいるファイルをロックしますか? 私は reader.Read() を使用していますが、それだけです。
xml - .net XmlDocument.load() のルート要素にエラーがありません
こんにちは。
REST 要求の結果を XmlDocument に読み込むと、asp.net エラー "ルート要素が見つかりません" が表示されます。Firefox アドオン「RESTTEST」を使用して実行すると、同じ REST リクエストが正常に表示され、有効な結果が返されます。しかし、エラーは C#.net コード ビハインドに表示されます。誰がこれを引き起こす可能性があるか知っていますか? 関連するコードは次のとおりです。
私の目標は、REST 要求の結果をトラバース可能な XML データ モデルに読み込み、そこから要素とその値を取得できるようにすることです。
このコードを使用すると、期待どおりの結果が得られます。違いはなんですか?
asp.net - 別の DLL のメソッドを介して Web アプリのファイルから XmlTextReader を読み込みます
Web アプリケーションにドロップされる DLL でメソッドを作成しています。
Web アプリケーションには、XML ファイルを含むフォルダーがあります。
/files/myfile.xml
私のdllはそのDLLを参照する必要がありますが、明らかにファイルへのパスをハードコーディングすることはできません。
そのファイルを参照して、そのファイルで XmlTextReader を読み込むにはどうすればよいですか?
c# - xmltextreader を使用して単純な xml ファイルからハッシュテーブルをロードする方法
xmltextreader を使用して、ハッシュテーブルをロードする方法を教えてください。
XML:
これは以前に尋ねられましたが、まだ完全に慣れていないファンキーな linq を使用していました。
asp.net - サイトにログインしているときに、別のページから C# XML を読み取るにはどうすればよいですか
ウェブブラウザでサイトにログインし、電話をかけようとするたびに
または
Response.Write からログイン ページが返されます。
ユーザー SessionId を WebClient または XmlTextReader にアタッチする方法はありますか、または現在ログインしているユーザーで C# で別のページを要求するにはどうすればよいですか?