xml auslesen (Linq)

  • VB.NET
  • .NET (FX) 4.0

Es gibt 42 Antworten in diesem Thema. Der letzte Beitrag () ist von toto.

    xml auslesen (Linq)

    ich versuche eine xml nach bestimmte wert auszulesen

    Spoiler anzeigen

    XML-Quellcode

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <!DOCTYPE score-partwise PUBLIC "-//Recordare//DTD MusicXML 2.0 Partwise//EN" "http://www.musicxml.org/dtds/partwise.dtd">
    3. <score-partwise xmlns:tools="http://schemas.android.com/tools" version="2.0" tools:ignore="EnforceUTF8">
    4. <movement-title>Blue Bossa</movement-title>
    5. <identification>
    6. <creator type="composer">Kenny Dorham</creator>
    7. <creator type="lyricist">Bossa Nova</creator>
    8. <rights>Made with iReal Pro</rights>
    9. <encoding>
    10. <software>iReal Pro (Android)</software>
    11. <encoding-date>2016-11-26</encoding-date>
    12. <supports element="accidental" type="no"/>
    13. <supports element="transpose" type="no"/>
    14. <supports attribute="new-page" element="print" type="yes" value="yes"/>
    15. <supports attribute="new-system" element="print" type="yes" value="yes"/>
    16. </encoding>
    17. </identification>
    18. <defaults>
    19. <scaling>
    20. <millimeters>7</millimeters>
    21. <tenths>40</tenths>
    22. </scaling>
    23. <page-layout>
    24. <page-height>1700</page-height>
    25. <page-width>1200</page-width>
    26. <page-margins type="both">
    27. <left-margin>72</left-margin>
    28. <right-margin>72</right-margin>
    29. <top-margin>72</top-margin>
    30. <bottom-margin>72</bottom-margin>
    31. </page-margins>
    32. </page-layout>
    33. <system-layout>
    34. <system-margins>
    35. <left-margin>22</left-margin>
    36. <right-margin>0</right-margin>
    37. </system-margins>
    38. <system-distance>100</system-distance>
    39. <top-system-distance>73</top-system-distance>
    40. </system-layout>
    41. <?DoletiRealb StaffJustificationPercentage=65?>
    42. <appearance>
    43. <line-width type="beam">5</line-width>
    44. <line-width type="heavy barline">5</line-width>
    45. <line-width type="leger">1.5625</line-width>
    46. <line-width type="light barline">1.5625</line-width>
    47. <line-width type="slur middle">2.1875</line-width>
    48. <line-width type="slur tip">0.625</line-width>
    49. <line-width type="staff">0.9375</line-width>
    50. <line-width type="stem">0.9375</line-width>
    51. <line-width type="tie middle">2.1875</line-width>
    52. <line-width type="tie tip">0.625</line-width>
    53. <note-size type="grace">60</note-size>
    54. <note-size type="cue">75</note-size>
    55. </appearance>
    56. <music-font font-family="Opus,music"/>
    57. <word-font font-family="Times New Roman"/>
    58. </defaults>
    59. <part-list>
    60. <score-part id="P1">
    61. <part-name print-object="no">Lead sheet</part-name>
    62. </score-part>
    63. </part-list>
    64. <!--=========================================================-->
    65. <part id="P1">
    66. <measure number="1">
    67. <print>
    68. <system-layout>
    69. <top-system-distance>210</top-system-distance>
    70. </system-layout>
    71. </print>
    72. <attributes>
    73. <divisions>768</divisions>
    74. <key>
    75. <fifths>-3</fifths>
    76. <mode>minor</mode>
    77. </key>
    78. <time>
    79. <beats>4</beats>
    80. <beat-type>4</beat-type>
    81. </time>
    82. <clef>
    83. <sign>G</sign>
    84. <line>2</line>
    85. </clef>
    86. </attributes>
    87. <barline/>
    88. <harmony print-frame="no" default-y="25" relative-x="10">
    89. <root>
    90. <root-step>C</root-step>
    91. <root-alter>0</root-alter>
    92. </root>
    93. <kind text="m7">minor-seventh</kind>
    94. </harmony>
    95. <note>
    96. <pitch>
    97. <step>B</step>
    98. <alter>-1</alter>
    99. <octave>4</octave>
    100. </pitch>
    101. <duration>3072</duration>
    102. <type>whole</type>
    103. <notehead>diamond</notehead>
    104. </note>
    105. </measure>
    106. <!--=========================================================-->
    107. <measure number="2">
    108. <print/>
    109. <attributes/>
    110. <harmony print-frame="no" default-y="25" relative-x="10">
    111. <root>
    112. <root-step>C</root-step>
    113. <root-alter>0</root-alter>
    114. </root>
    115. <kind text="m7">minor-seventh</kind>
    116. </harmony>
    117. <note>
    118. <pitch>
    119. <step>B</step>
    120. <alter>-1</alter>
    121. <octave>4</octave>
    122. </pitch>
    123. <duration>3072</duration>
    124. <type>whole</type>
    125. <notehead>diamond</notehead>
    126. </note>
    127. </measure>
    128. <!--=========================================================-->
    129. <measure number="3">
    130. <print/>
    131. <attributes/>
    132. <harmony print-frame="no" default-y="25" relative-x="10">
    133. <root>
    134. <root-step>F</root-step>
    135. <root-alter>0</root-alter>
    136. </root>
    137. <kind text="m7">minor-seventh</kind>
    138. </harmony>
    139. <note>
    140. <pitch>
    141. <step>B</step>
    142. <alter>-1</alter>
    143. <octave>4</octave>
    144. </pitch>
    145. <duration>3072</duration>
    146. <type>whole</type>
    147. <notehead>diamond</notehead>
    148. </note>
    149. </measure>
    150. <!--=========================================================-->
    151. <measure number="4">
    152. <print/>
    153. <attributes/>
    154. <harmony print-frame="no" default-y="25" relative-x="10">
    155. <root>
    156. <root-step>F</root-step>
    157. <root-alter>0</root-alter>
    158. </root>
    159. <kind text="m7">minor-seventh</kind>
    160. </harmony>
    161. <note>
    162. <pitch>
    163. <step>B</step>
    164. <alter>-1</alter>
    165. <octave>4</octave>
    166. </pitch>
    167. <duration>3072</duration>
    168. <type>whole</type>
    169. <notehead>diamond</notehead>
    170. </note>
    171. </measure>
    172. <!--=========================================================-->
    173. <measure number="5">
    174. <print new-system="yes"/>
    175. <attributes/>
    176. <harmony print-frame="no" default-y="25" relative-x="10">
    177. <root>
    178. <root-step>D</root-step>
    179. <root-alter>0</root-alter>
    180. </root>
    181. <kind text="m7" parentheses-degrees="yes">minor-seventh</kind>
    182. <degree>
    183. <degree-value>5</degree-value>
    184. <degree-alter>-1</degree-alter>
    185. <degree-type>alter</degree-type>
    186. </degree>
    187. </harmony>
    188. <note>
    189. <pitch>
    190. <step>B</step>
    191. <alter>-1</alter>
    192. <octave>4</octave>
    193. </pitch>
    194. <duration>3072</duration>
    195. <type>whole</type>
    196. <notehead>diamond</notehead>
    197. </note>
    198. </measure>
    199. <!--=========================================================-->
    200. <measure number="6">
    201. <print/>
    202. <attributes/>
    203. <harmony print-frame="no" default-y="25" relative-x="10">
    204. <root>
    205. <root-step>G</root-step>
    206. <root-alter>0</root-alter>
    207. </root>
    208. <kind text="7" parentheses-degrees="yes">dominant</kind>
    209. <degree>
    210. <degree-value>9</degree-value>
    211. <degree-alter>-1</degree-alter>
    212. <degree-type>add</degree-type>
    213. </degree>
    214. </harmony>
    215. <note>
    216. <pitch>
    217. <step>B</step>
    218. <alter>-1</alter>
    219. <octave>4</octave>
    220. </pitch>
    221. <duration>3072</duration>
    222. <type>whole</type>
    223. <notehead>diamond</notehead>
    224. </note>
    225. </measure>
    226. <!--=========================================================-->
    227. <measure number="7">
    228. <print/>
    229. <attributes/>
    230. <harmony print-frame="no" default-y="25" relative-x="10">
    231. <root>
    232. <root-step>C</root-step>
    233. <root-alter>0</root-alter>
    234. </root>
    235. <kind text="m7">minor-seventh</kind>
    236. </harmony>
    237. <note>
    238. <pitch>
    239. <step>B</step>
    240. <alter>-1</alter>
    241. <octave>4</octave>
    242. </pitch>
    243. <duration>3072</duration>
    244. <type>whole</type>
    245. <notehead>diamond</notehead>
    246. </note>
    247. </measure>
    248. <!--=========================================================-->
    249. <measure number="8">
    250. <print/>
    251. <attributes/>
    252. <harmony print-frame="no" default-y="25" relative-x="10">
    253. <root>
    254. <root-step>C</root-step>
    255. <root-alter>0</root-alter>
    256. </root>
    257. <kind text="m7">minor-seventh</kind>
    258. </harmony>
    259. <note>
    260. <pitch>
    261. <step>B</step>
    262. <alter>-1</alter>
    263. <octave>4</octave>
    264. </pitch>
    265. <duration>3072</duration>
    266. <type>whole</type>
    267. <notehead>diamond</notehead>
    268. </note>
    269. </measure>
    270. <!--=========================================================-->
    271. <measure number="9">
    272. <print new-system="yes"/>
    273. <attributes/>
    274. <harmony print-frame="no" default-y="25" relative-x="10">
    275. <root>
    276. <root-step>E</root-step>
    277. <root-alter>-1</root-alter>
    278. </root>
    279. <kind text="m7">minor-seventh</kind>
    280. </harmony>
    281. <note>
    282. <pitch>
    283. <step>B</step>
    284. <alter>-1</alter>
    285. <octave>4</octave>
    286. </pitch>
    287. <duration>3072</duration>
    288. <type>whole</type>
    289. <notehead>diamond</notehead>
    290. </note>
    291. </measure>
    292. <!--=========================================================-->
    293. <measure number="10">
    294. <print/>
    295. <attributes/>
    296. <harmony print-frame="no" default-y="25" relative-x="10">
    297. <root>
    298. <root-step>A</root-step>
    299. <root-alter>-1</root-alter>
    300. </root>
    301. <kind text="7">dominant</kind>
    302. </harmony>
    303. <note>
    304. <pitch>
    305. <step>B</step>
    306. <alter>-1</alter>
    307. <octave>4</octave>
    308. </pitch>
    309. <duration>3072</duration>
    310. <type>whole</type>
    311. <notehead>diamond</notehead>
    312. </note>
    313. </measure>
    314. <!--=========================================================-->
    315. <measure number="11">
    316. <print/>
    317. <attributes/>
    318. <harmony print-frame="no" default-y="25" relative-x="10">
    319. <root>
    320. <root-step>D</root-step>
    321. <root-alter>-1</root-alter>
    322. </root>
    323. <kind text="maj7">major-seventh</kind>
    324. </harmony>
    325. <note>
    326. <pitch>
    327. <step>B</step>
    328. <alter>-1</alter>
    329. <octave>4</octave>
    330. </pitch>
    331. <duration>3072</duration>
    332. <type>whole</type>
    333. <notehead>diamond</notehead>
    334. </note>
    335. </measure>
    336. <!--=========================================================-->
    337. <measure number="12">
    338. <print/>
    339. <attributes/>
    340. <harmony print-frame="no" default-y="25" relative-x="10">
    341. <root>
    342. <root-step>D</root-step>
    343. <root-alter>-1</root-alter>
    344. </root>
    345. <kind text="maj7">major-seventh</kind>
    346. </harmony>
    347. <note>
    348. <pitch>
    349. <step>B</step>
    350. <alter>-1</alter>
    351. <octave>4</octave>
    352. </pitch>
    353. <duration>3072</duration>
    354. <type>whole</type>
    355. <notehead>diamond</notehead>
    356. </note>
    357. </measure>
    358. <!--=========================================================-->
    359. <measure number="13">
    360. <print new-system="yes"/>
    361. <attributes/>
    362. <harmony print-frame="no" default-y="25" relative-x="10">
    363. <root>
    364. <root-step>D</root-step>
    365. <root-alter>0</root-alter>
    366. </root>
    367. <kind text="m7" parentheses-degrees="yes">minor-seventh</kind>
    368. <degree>
    369. <degree-value>5</degree-value>
    370. <degree-alter>-1</degree-alter>
    371. <degree-type>alter</degree-type>
    372. </degree>
    373. </harmony>
    374. <note>
    375. <pitch>
    376. <step>B</step>
    377. <alter>-1</alter>
    378. <octave>4</octave>
    379. </pitch>
    380. <duration>3072</duration>
    381. <type>whole</type>
    382. <notehead>diamond</notehead>
    383. </note>
    384. </measure>
    385. <!--=========================================================-->
    386. <measure number="14">
    387. <print/>
    388. <attributes/>
    389. <harmony print-frame="no" default-y="25" relative-x="10">
    390. <root>
    391. <root-step>G</root-step>
    392. <root-alter>0</root-alter>
    393. </root>
    394. <kind text="7" parentheses-degrees="yes">dominant</kind>
    395. <degree>
    396. <degree-value>9</degree-value>
    397. <degree-alter>-1</degree-alter>
    398. <degree-type>add</degree-type>
    399. </degree>
    400. </harmony>
    401. <note>
    402. <pitch>
    403. <step>B</step>
    404. <alter>-1</alter>
    405. <octave>4</octave>
    406. </pitch>
    407. <duration>3072</duration>
    408. <type>whole</type>
    409. <notehead>diamond</notehead>
    410. </note>
    411. </measure>
    412. <!--=========================================================-->
    413. <measure number="15">
    414. <print/>
    415. <attributes/>
    416. <harmony print-frame="no" default-y="25" relative-x="10">
    417. <root>
    418. <root-step>C</root-step>
    419. <root-alter>0</root-alter>
    420. </root>
    421. <kind text="m7">minor-seventh</kind>
    422. </harmony>
    423. <note>
    424. <pitch>
    425. <step>B</step>
    426. <alter>-1</alter>
    427. <octave>4</octave>
    428. </pitch>
    429. <duration>3072</duration>
    430. <type>whole</type>
    431. <notehead>diamond</notehead>
    432. </note>
    433. </measure>
    434. <!--=========================================================-->
    435. <measure number="16">
    436. <print/>
    437. <attributes/>
    438. <barline location="right">
    439. <bar-style>light-heavy</bar-style>
    440. </barline>
    441. <harmony print-frame="no" default-y="25" relative-x="10">
    442. <root>
    443. <root-step>D</root-step>
    444. <root-alter>0</root-alter>
    445. </root>
    446. <kind text="m7" parentheses-degrees="yes">minor-seventh</kind>
    447. <degree>
    448. <degree-value>5</degree-value>
    449. <degree-alter>-1</degree-alter>
    450. <degree-type>alter</degree-type>
    451. </degree>
    452. </harmony>
    453. <note>
    454. <pitch>
    455. <step>B</step>
    456. <alter>-1</alter>
    457. <octave>4</octave>
    458. </pitch>
    459. <duration>1536</duration>
    460. <type>half</type>
    461. <notehead>diamond</notehead>
    462. </note>
    463. <harmony print-frame="no" default-y="25" relative-x="10">
    464. <root>
    465. <root-step>G</root-step>
    466. <root-alter>0</root-alter>
    467. </root>
    468. <kind text="7" parentheses-degrees="yes">dominant</kind>
    469. <degree>
    470. <degree-value>9</degree-value>
    471. <degree-alter>-1</degree-alter>
    472. <degree-type>add</degree-type>
    473. </degree>
    474. </harmony>
    475. <note>
    476. <pitch>
    477. <step>B</step>
    478. <alter>-1</alter>
    479. <octave>4</octave>
    480. </pitch>
    481. <duration>1536</duration>
    482. <type>half</type>
    483. <notehead>diamond</notehead>
    484. </note>
    485. </measure>
    486. <!--=========================================================-->
    487. </part>
    488. </score-partwise>


    was ich brauche sind nur die:
    <root-step>G</root-step>
    uhd <kind text="7"
    ergibt
    G7

    Mein Code bisher um die root-step zu lesen:

    VB.NET-Quellcode

    1. Dim file As String = Path_B & ListView1.FocusedItem.Text & ".xml"
    2. Dim doc As New XDocument
    3. doc = XDocument.Load(file)
    4. For Each element As XElement In doc.Element("score-partwise").Element("part") _
    5. .Element("measure").Element("harmony").Element("root").Elements()
    6. Dim ChordName As String = element.Element("root-step").Value
    7. Label1.Text = (ChordName)
    8. Next]


    bekomme ich
    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
    in der Zeile Dim ChordName......

    Ich komme nicht auf den Fehler.
    Ein Tipp wäre willkommen
    Danke im Voraus
    toto
    lg toto

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    @toto 5 Ebenen tief die Elemente auflisten, da würde ich zunächst nen Haltepunkt drauf setzen und mich überzeugen, dass ich im richtigen Knoten bin.
    Debuggen, Fehler finden und beseitigen
    Verwende zunächst die Property HasElements:
    docs.microsoft.com/de-de/dotne…elements?view=netcore-3.1
    und liste im Output-Fenster die vorhandenen Knoten auf.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ähm, du stepst ja schon durch die Elemente. Und du musst prüfen, ob das Element das gewünschte Element ist. Die Variable Chordname brauchst du im Beispiel gar nicht.

    VB.NET-Quellcode

    1. For Each element As XElement In doc.Element("score-partwise").Element("part") _
    2. .Element("measure").Element("harmony").Element("root").Elements()
    3. If element.Name = "root-step" Then
    4. Label1.Text = element.Value
    5. End If
    6. Next
    naja, der Fehler sagt doch, dass etwas im Ausdruck

    VB.NET-Quellcode

    1. element.Element("root-step")
    Nothing ist.
    Und das kann eiglich nur der ganze genannte Ausdruck sein, also element.Element("root-step") ist Nothing, dann kann man da natürlich kein Value von abrufen.
    Mit anderen Worten: element enthält kein Element namens "root-step".

    Also die Schleife ist offsichtlich auf ein element gestossen, was kein Element namens "root-step" enthält.

    Ich danke euch für die Antworten.
    Ich habe gerade angefangen mit xml(Linq)
    Aus folgender Beitrag habe versucht meine xml zu lesen:

    @ .xml Bestimmter wert auslesen

    @ brauche Zeit um mich durchzuarbeiten
    @ Dksksm habe so probiert und im label war root-step zu lesen, also bin ich im ristigen Knoten.
    @ EDR das hatte ich anch schon festgestellt, beim Fehler, das element Nothig war

    wenn element kein Element root-step enthält was ist dann der richtige Abruf?

    Sorry Fehler von mir, der Fehler taucht in der Schleife auf
    Bilder
    • 1.jpg

      25,89 kB, 828×184, 90 mal angesehen
    lg toto

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „toto“ ()

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim file As String = Path_B & ListView1.FocusedItem.Text & ".xml"
    3. Dim doc As New XDocument
    4. doc = XDocument.Load(file)
    5. For Each element As XElement In doc.Element("score-partwise").Element("part") _
    6. .Element("measure").Element("harmony").Element("root").Elements()
    7. For Each elementx As XElement In doc.Descendants("root")
    8. If elementx.HasElements Then
    9. Label1.Text = elementx.ToString
    10. End If
    11. Next
    12. Next
    13. End Sub


    hab das so geändert und bekomme was im label zu sehen (siehe Bild)
    Wie bekomme ich nur die root-step und ohne root-alter Text?
    also nur G

    Danke im Voraus
    Bilder
    • 2.jpg

      4,76 kB, 248×209, 861 mal angesehen
    lg toto

    toto schrieb:


    @ Dksksm habe so probiert und im label war root-step zu lesen, also bin ich im ristigen Knoten.


    Ich habe nicht behauptet, dass Du nicht im richtigen Knoten warst. Nur hast du das Element von element versucht zu lesen, das gibt es aber nicht. es gibt nur element.Name und element.Value. Mein Code funktioniert! Wenn du das nicht verstehst ist das aber auch nicht mein Problem. Ich bin hier raus.
    Nachtrag, ja auch die Frage deines letzten Posts zeigt, dass du meine Antwort nicht verstanden und nicht einmal ausprpbiert hast.
    @toto Probierma mit ListBox, nicht aber Label:

    VB.NET-Quellcode

    1. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    2. ListBox1.Items.Clear()
    3. Dim file As String = "c:\temp\musik.xml"
    4. Dim doc = XDocument.Load(file)
    5. For Each element As XElement In doc.Element("score-partwise").Element("part") _
    6. .Element("measure").Element("harmony").Element("root").Elements()
    7. Dim ChordName As String = element.Value
    8. ListBox1.Items.Add(ChordName)
    9. Next
    10. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    hab das so geändert und bekomme was im label zu sehen (siehe Bild)
    Wie bekomme ich nur die root-step und ohne root-alter Text?
    also nur G


    so bekommst du beides

    VB.NET-Quellcode

    1. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    2. Dim x As XElement = XElement.Load("D:\XMLToto.xml")
    3. Dim getAll = x.Descendants("root")
    4. For Each getValue In getAll
    5. 'beides
    6. Debug.WriteLine(getValue.Element("root-step").Value & "-" & getValue.Element("root-alter").Value)
    7. 'einzel
    8. Debug.WriteLine(getValue.Element("root-step").Value
    9. Next getValue
    10. End Sub


    oder einfach mal Alles anschauen

    VB.NET-Quellcode

    1. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    2. Dim textReader As New Xml.XmlTextReader("D:\XmlToto.xml")
    3. Dim xElementName As String = Nothing
    4. While textReader.Read()
    5. Select Case textReader.NodeType
    6. Case Xml.XmlNodeType.Element
    7. xElementName = textReader.Name
    8. If textReader.AttributeCount > 0 Then
    9. 'noch weitere Attribute vorhanden?
    10. While textReader.MoveToNextAttribute
    11. Debug.WriteLine("NextAttribute :")
    12. Debug.WriteLine(textReader.Name & "-" & textReader.Value)
    13. End While
    14. End If
    15. Case Xml.XmlNodeType.Text
    16. 'ausgeben
    17. Debug.WriteLine(xElementName & ": " & textReader.Value)
    18. Debug.WriteLine("------------------------------------------")
    19. End Select
    20. End While
    21. End Sub

    Hallö an alle,
    habe gestern Probleme mit dem Internet.

    [ttIch habe gerade angefangen mit xml(Linq) ][/tt]
    es soll nur eine Eindeutung sein falls ich mich falsch ausdrucke oder auf dem falschen Weg bin.

    @
    Dksksm Ich weis das du nicht mehr da bist, wollte nur sagen das ich
    dein Code probiert hatte und das element nur Name oder Value abrufen
    kann habe auch verstanden, schade, aber hiermit will mich nur
    entschuldigen falls ich unhöflich war.

    @ Rod dein Code funzt,
    ist auch klar, ihr seid die Profi. Aber zum Code: wenn die Schleife sagt
    "For each element in ...........("root"), warum gibt mir nur ein
    Eintrag und nicht alle "root-step" zurück?

    @ Kasi dein Code funzt auch natürlich, und meine Frage an dich ist: wie bekomme ich an folgende Stelle:
    [ttDebug.WriteLine(getValue.Element("root-step").Value & "-" & getValue............("kind").....("text").Value)][/tt]
    siehe xml Post #1
    Der zweite Code gibt mir alles was ich brauche zurück, aber es ist ein wenig zu früh, ich kann ihn leider nicht ganz verstehen weder noch umsetzen.

    @ EDR danke dir auch für deine Anregungen und hoffe wie an @Dksksm geschriben "Element" war Nothing und "element kan nur value oder name aufrufen, bin ich richtig?

    Bitte
    habt Geduld mit mir, ich fanf gerade an mit xml und kenne mich bei den
    vielen Bezeichnungen wie Element, Descendant, Attribute usw. nicht ganz
    gut aus.

    Danke an euch alle
    und bitte weitere Anregungen,
    lg toto

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „toto“ ()

    @toto Ich habe lediglich den Code in Deinem Post lauffähig gemacht.
    Um alle Elemente auszulesen muss ich mal tiefer rein schauen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @toto Nur ein Eintrag deswegen, weil es nur einen Eintrag "Part" gibt.
    Zerpflücke die XML, damit Du weißt, was da drinne steht.
    Probiere dies:

    VB.NET-Quellcode

    1. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    2. ListBox1.Items.Clear()
    3. Dim file As String = "c:\temp\musik.xml"
    4. Dim doc = XDocument.Load(file)
    5. Dim element2 = doc.Element("score-partwise").Element("part")
    6. 'element2.Save("c:\temp\musik_Part.xml")
    7. Dim xx As IEnumerable(Of XElement) = element2.Elements
    8. For Each element As XElement In xx 'element2.Element("measure").Element("harmony").Element("root").Elements()
    9. Dim ChordName As String = element.Value
    10. ListBox1.Items.Add(ChordName)
    11. Next
    12. End Sub
    Achte insbesondere auf die auskommentierte Zeile 6 :!:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Kasi schrieb:

    aber schönes Beispiel
    Das hab ich irgendwo mit einem umfangreichen Beispiel im welt-weiten Web gefunden.
    dotnetcurry.com/linq/564/linq-to-xml-tutorials-examples
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „RodFromGermany“ ()

    @Rod danke für die Tipps und den Link. Wenn ich soweit bin kann ich hier weiter schreiben oder neue Thread aufmachen?

    @Kasi danke dir auch für den Link sowas habe ich gesucht. Aber damit ich auch ein Erfolg sehen kann:
    Debug.WriteLine(getValue.Element("root-step").Value & "-" & getValue............("kind").....("text").Value)

    Wie kann ich den Attribut von ("kind"), ("text") lesen?

    und wenn kein Antwort kommen sollte:
    Vielen Dank im Voraus
    lg toto
    @toto Du kannst hier weiter schreiben.
    Spiele mal alle Fälle in dem Link durch und wende sie dann auf Deine XML an.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!