teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

XMLに名前空間を追記しました

2019/01/11 00:25

投稿

spookies
spookies

スコア15

title CHANGED
File without changes
body CHANGED
@@ -2,7 +2,7 @@
2
2
  変更するプログラムを作成しようとしています。XMLは以下のようなイメージです。
3
3
 
4
4
  ```ここに言語を入力
5
- <Root>
5
+ <Root InterfaceName="IF" InterfaceVersion="1.0" xmlns="http://addr/path1/path2">
6
6
  <Child>
7
7
  <GrandChild1>
8
8
  <Elem1>foo1</Elem1>
@@ -20,8 +20,8 @@
20
20
 
21
21
  ```ここに言語を入力
22
22
  XElement root = XElement.Load("test.xml");
23
+ XNamespace ns = "addr/path1/path2";
23
- var elem1 = from el in root.Descendants("Elem1")
24
+ var elem1 = from el in root.Descendants(ns + "Elem1") select el;
24
-           select el;
25
25
  ```
26
26
 
27
27
  elem1がnullで失敗しています。

2

XMLを直しました

2019/01/11 00:25

投稿

spookies
spookies

スコア15

title CHANGED
File without changes
body CHANGED
@@ -5,10 +5,12 @@
5
5
  <Root>
6
6
  <Child>
7
7
  <GrandChild1>
8
- <Elem1>foo</Elem1>
8
+ <Elem1>foo1</Elem1>
9
- <Elem2>bar</Elem2>
9
+ <Elem2>bar1</Elem2>
10
10
  </GrandChild1>
11
11
  <GrandChild2>
12
+ <Elem3>foo2</Elem3>
13
+ <Elem4>bar2</Elem4>
12
14
  </GrandChild2>
13
15
  </Child>
14
16
  </Root>

1

XMLとソースをコードで入力してなかったので直しました。

2019/01/10 09:30

投稿

spookies
spookies

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,7 @@
1
1
  XMLファイルを読み込み、そのルート要素の孫以降の要素の値をチェックして、
2
2
  変更するプログラムを作成しようとしています。XMLは以下のようなイメージです。
3
3
 
4
+ ```ここに言語を入力
4
5
  <Root>
5
6
  <Child>
6
7
  <GrandChild1>
@@ -11,11 +12,14 @@
11
12
  </GrandChild2>
12
13
  </Child>
13
14
  </Root>
15
+ ```
14
16
 
15
17
  以下のようなプログラムで読み込んでみましたが、
16
18
 
19
+ ```ここに言語を入力
17
20
  XElement root = XElement.Load("test.xml");
18
- var grandChild3 = from el in root.Descendants("Elem1")
21
+ var elem1 = from el in root.Descendants("Elem1")
19
-          select el;
22
+           select el;
23
+ ```
20
24
 
21
- e1がnullで失敗しています。
25
+ elem1がnullで失敗しています。