Ik ben met een stukje code bezig om files uit te lezen. Gewone .txt of .doc files gaan heel eenvoudig, maar bij een docx wordt het een groter probleem. Mijn voornaamste hindernis is dat dit gebruikt gaat worden bij een ASP.NET pagina die draait op een server waar geen Office 2007 op geïnstalleerd is. Dus moet ik .docx files via een omweg uitlezen.
Nu had ik een mooi voorbeeld gevonden van een desktop applicatie die deels hetzelfde deed als wat ik nodig had. Echter, dit programma is geschreven in C#. Nu is C# geen probleem voor mij, aangezien het mijn standaard programmeertaal is op mijn opleiding. Wat wel een probleem vormt, is het overzetten naar VB.NET. Vele delen kan je bijna 1 op 1 omzetten, maar nu ben ik blijven haken op het volgende deel:
Dit is de C# code. Het overzetten gaat fout daar waar ik een pijl heb gezet, bij ((XmlElement)child).GetAttribute("xml:space"). Het is mijn eerste keer dat ik uitgebreid werk met het uitlezen/bewerken van XML, dus ik ben er al niet zo'n held in.
Nu is mijn vraag: wat is hiervan de juiste omzetting naar VB.NET? Ik heb al vele dingen geprobeerd, maar OF ik kan de optie "GetAttribute" niet gebruiken, of bij het debuggen in Visual Studio 2008 loopt hij vast met verschillende errors.
Bvd.
Nu had ik een mooi voorbeeld gevonden van een desktop applicatie die deels hetzelfde deed als wat ik nodig had. Echter, dit programma is geschreven in C#. Nu is C# geen probleem voor mij, aangezien het mijn standaard programmeertaal is op mijn opleiding. Wat wel een probleem vormt, is het overzetten naar VB.NET. Vele delen kan je bijna 1 op 1 omzetten, maar nu ben ik blijven haken op het volgende deel:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| private string ReadNode(XmlNode node) { if (node == null || node.NodeType != XmlNodeType.Element) return string.Empty; StringBuilder sb = new StringBuilder(); foreach (XmlNode child in node.ChildNodes) { if (child.NodeType != XmlNodeType.Element) continue; switch (child.LocalName) { case "t": // Text sb.Append(child.InnerText.TrimEnd()); -----> string space = ((XmlElement)child).GetAttribute("xml:space"); if (!string.IsNullOrEmpty(space) && space == "preserve") sb.Append(' '); |
Dit is de C# code. Het overzetten gaat fout daar waar ik een pijl heb gezet, bij ((XmlElement)child).GetAttribute("xml:space"). Het is mijn eerste keer dat ik uitgebreid werk met het uitlezen/bewerken van XML, dus ik ben er al niet zo'n held in.
Nu is mijn vraag: wat is hiervan de juiste omzetting naar VB.NET? Ik heb al vele dingen geprobeerd, maar OF ik kan de optie "GetAttribute" niet gebruiken, of bij het debuggen in Visual Studio 2008 loopt hij vast met verschillende errors.
Bvd.
Ryzen 9 9950X3D ~~ 32GB GSkill TridentZ 6000Mhz ~~ ASRock B850M Steel Legend ~~ Powercolor Hellhound RX9070XT