---
title: "Läsa in XML-fil"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/88678-läsa-in-xml-fil"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "aleborg"
published: "2003-10-17T01:45:01.000Z"
updated: "2003-10-17T17:59:19.000Z"
replies: 13
views: 589
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/88678-läsa-in-xml-fil"
---

# Läsa in XML-fil

## #1 — aleborg, 2003-10-17T01:45Z

Jag har en xml-fil som ser ut så här:
\<?xml version="1.0" ?\> 
 \<envoxstore\>
 \<product name="Basic"\>
  \<price\>6207.80\</price\> 
  \</product\>
 \<product name="Speech"\>
  \<price\>7318.70\</price\> 
  \</product\>
 \<product name="Advanced"\>
  \<price\>8498.60\</price\> 
  \</product\>
 \<product name="Comprehensive"\>
  \<price\>13958.60\</price\> 
  \</product\>
  \</envoxstore\>

och nu vill jag lägga in dom olika priserna i olika labels, det är endast 4 st priser så jag vill göra det på enklast tänkbara sätt!
Men hur? Har aldrig rört området xml tidigare...

Permalänk: https://www.webforum.nu/p/88678

## #2 — Tengblad, 2003-10-17T03:10Z

<http://www.w3schools.com/xml/default.asp> nått som kan hjälpa kanske?

Permalänk: https://www.webforum.nu/p/1188535

## #3 — Vide, 2003-10-17T06:38Z

Här har du hur man lägger in XMLdokument i ett DataSet, sedan är det bara att skicka ut det till dina Labels:
<http://www.msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemxmlxmldatadocumentclassdatasettopic.asp>

Permalänk: https://www.webforum.nu/p/1188561

## #4 — aleborg, 2003-10-17T08:35Z

Provade med det här:

```
			XmlDataDocument doc = new XmlDataDocument();
			doc.DataSet.ReadXmlSchema(Server.MapPath("../shop/products.xsd")); 
			doc.Load(Server.MapPath("../shop/products.xml"));

			DataTable price = doc.DataSet.Tables["products"];
			lblBasic.Text = price.Rows[0]["price"].ToString();
```

men får:
System.NullReferenceException: Object reference not set to an instance of an object.
på:
lblBasic.Text = books.Rows\[0\]\["price"\].ToString();

Permalänk: https://www.webforum.nu/p/1188618

## #5 — Josef, 2003-10-17T08:38Z

Det där är väl inte all kod, eftersom du inte har något som heter books i din kod. :q

Permalänk: https://www.webforum.nu/p/1188621

## #6 — Engine^, 2003-10-17T08:39Z

Eller så ska books vara price?

Permalänk: https://www.webforum.nu/p/1188622

## #7 — Dino, 2003-10-17T09:13Z

```
XmlTextReader xdr = new XmlTextReader(HttpContext.Current.Server.MapPath("../shop/products.xml"))
string[] s = new string[4];
int i = 0;
while(xdr.Read()) {
   if(xdr.NodeType == XmlNodeType.Element){
      if(xdrData.Name == "price"){
         s[i] = xdrData.ReadString();
         i++;
      }
   }
}
xdr.Close();

lbBasic.Text = s[0];
lbSpeech.Text = s[1];
lbAdvanced.Text = s[2];
lbComprehensive.Text = s[3];
```

Permalänk: https://www.webforum.nu/p/1188647

## #8 — aleborg, 2003-10-17T09:19Z

miss av mig, ändrade i koden innan jag postade, felmeddelandet är på raden:

lblBasic.Text = price.Rows\[0\]\["price"\].ToString();

Permalänk: https://www.webforum.nu/p/1188651

## #9 — aleborg, 2003-10-17T09:20Z

Dino -\> måste man verkligen loopa?

Permalänk: https://www.webforum.nu/p/1188653

## #10 — Dino, 2003-10-17T09:40Z

Om du vill gå igenom xml dokumetet så är det nog bra att loopa. Kanske kan avvända typ XPath, men tror det är mer resurskrävande. Sen skulle jag gissa på att XmlTextReader är XMLs motsvarighet till en vanlig DataReader. Och då borde ju det innebära att det är det snabbaste sättet att ta ut datan. Gissar vidare att XmlDataDocument invändigt använder sig av en XmlTextReader. Så varför kasta massa resurser på att bygga ett sådant och dess tillbehör.

Permalänk: https://www.webforum.nu/p/1188668

## #11 — nitro2k01, 2003-10-17T09:47Z

Offtopic: Smurfen från Kungälv. :)

Permalänk: https://www.webforum.nu/p/1188673

## #12 — m_soderlund, 2003-10-17T11:57Z

> **nitro2k01 skrev:**
>
> Offtopic: Smurfen från Kungälv. :)

Va??

Aleborg: [ASP.NET Data Binding with XML @ W3schools](http://www.w3schools.com/aspnet/aspnet_xml.asp) kanske hjälper? :)

Permalänk: https://www.webforum.nu/p/1188760

## #13 — renholm, 2003-10-17T14:28Z

Om du vill presentera datan som HTML tror jag att xsl kan vara något att titta på. XSL "läser" in XML och spottar ut HTML.

Permalänk: https://www.webforum.nu/p/1188855

## #14 — renholm, 2003-10-17T17:59Z

<http://samples.gotdotnet.com/quickstart/howto/doc/Xml/TransformXml.aspx> samt <https://www.w3schools.com> kanske kan vara intressanta.

Permalänk: https://www.webforum.nu/p/1188966

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/88678-läsa-in-xml-fil
