以下のようなXMLファイルがあったとき、serverとdatadaseの属性値を取り出す方法がわかりません。
どなたかご教授ください。
また、複数あるpropertyの中から(value=)"sa"を取得する方法もお願いします。
現在、C#で、次のようにしてXMLファイルにアクセスして、ルート要素名を取り出すことには成功しています。
------ ソース ここから --------
XmlDocument xmlDoc = new XmlDocument();
// XmlDocumentオブジェクトを作成
xmlDoc.Load(fileName);
XmlElement xmlRoot = xmlDoc.DocumentElement;
Console.Write("ルート名は[" + xmlRoot.Name + "]です。\n");
--------- ソース ここまで ---------
--------- ここからXMLファイル --------
<?xml version="1.0" encoding="utf-8"?>
<!-- ↓これ(server)がルート名 -->
<server maintenance="No">
<!-- データベース接続設定 -->
<database providerInvariantName="System.Data.SqlClient" connectionString="xxxxx">
<property key="dbUrl" value="xxxxx" />
<property key="userName" value="sa" />
<property key="userPassword" value="xxxxxxxx" />
<property key="driverClass" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />
</database>
<!-- LDAP設定 -->
<ldap>
<!-- シングルサインオン -->
<sso Password="xxxxx" SyncTime="3600" />
</ldap>
</server>
No.1ベストアンサー
- 回答日時:
やりかたは、色々あるけど、1つの方法
----------------------------------------------------------------
XmlNode xmlRoot = xmlDoc.DocumentElement;
Console.Write("ルート名は[" + xmlRoot.Name + "]です。\n");
Console.WriteLine(xmlRoot.SelectSingleNode("/server/@maintenance").Value);
Console.WriteLine(xmlRoot.SelectSingleNode("/server/database/@providerInvariantName").Value);
Console.WriteLine(xmlRoot.SelectSingleNode("/server/database/@connectionString").Value);
Console.WriteLine(xmlRoot.SelectSingleNode("/server/database/property/@value[../@key='userName']").Value);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XPathで途中に名前空間が設定さ...
-
CPUの考え方を教えてください ...
-
XMLで要素が記述された順番に意...
-
東芝のDynabookなのですがアン...
-
バッチファイルでテキストファ...
-
VBSでxmlの値を書き換えたい
-
XMLからデータを取得
-
4バイトを10進数に変換する方法
-
xmlファイルが上手にHTMLに変換...
-
同じタグ名の項目取得
-
Visual Basic .NET の識別子は...
-
ルート要素ノードが2個ある場合?
-
eclipseへのxmlファイル追加
-
XML、XSLTの適応エラー(IEから...
-
VB.NETで最後フォのフォ...
-
TreeViewに重複する値をセット
-
VBでXMLを扱えるコントロールは...
-
SNMP リンクダウンとノードダ...
-
XMLウインドウ表示時のエラー
-
MSXMLを使ってノードを削除した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
XPathで途中に名前空間が設定さ...
-
XMLファイル内のデータ(値)を変...
-
VBAでXML文書のある特定タグ以...
-
XML文のid属性とclass属性について
-
VBAでXMLを出力するプログラム...
-
XMLの要素の内容の中に要素
-
XMLDocumentでスキーマを無視し...
-
LoadCML
-
VB6でXMLを作成しているのです...
-
C# GetElementsByTagNameで取得...
-
C# もしくはVB
-
C#でXMLの読み取り書き取りにつ...
-
XMLをエクセルに取り込むマクロ...
-
WebBrowser1.Document.Body.Inn...
-
CPUの考え方を教えてください ...
-
東芝のDynabookなのですがアン...
-
XMLで要素が記述された順番に意...
-
SNMP リンクダウンとノードダ...
-
XML、XSLTの適応エラー(IEから...
-
ルート要素ノードが2個ある場合?
おすすめ情報