Toon posts:

Uitlezen XML file punt valt weg ( moet komma zijn) C#

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo Allemaal,

ik ben nieuw in C# en ben bezig met mijn eerste programmaatje :)

Nu wil ik een XML file inlezen ( dit is al gelukt ) alleen vallen de punten weg en krijg ik dus in mijn programma IPV bijv. 6.3 >> 63 .

Weet iemand hoe dit te verhelpen? ben al een aantal avonden boeken en internet aan het afspeuren maar kom er niet uit.

Ik heb nu het volgende.. Hulp wordt zeer gewaardeerd.

XmlDocument doc = new XmlDocument();
doc.Load("DieData.xml");
foreach (XmlNode node in doc.DocumentElement)
{
if (node.Attributes[0].InnerText==M_Matrijs)
{
V_Width= double.Parse(node.ChildNodes[0].InnerXml);
M_MinBeen = double.Parse(node.ChildNodes[1].InnerXml);
M_MinZ = double.Parse(node.ChildNodes[2].InnerXml);
M_MaxBuig = double.Parse(node.ChildNodes[3].InnerXml);
H_Hoek = double.Parse(node.ChildNodes[4].InnerXml);
M_MatBreed = double.Parse(node.ChildNodes[5].InnerXml);
H_Hoogte = double.Parse(node.ChildNodes[6].InnerXml);
D_DieRadius= double.Parse(node.ChildNodes[7].InnerXml);
D_DieRollRadius = double.Parse(node.ChildNodes[8].InnerXml);

}
}

...

Alle reacties


Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 06-10 17:29

Matis

Rubber Rocket

Dit heeft denk ik met localization te maken. Zoek daar maar eens op.
Daarnaast wil ik je adviseren om [code]...[/code] te gebruiken om je code tussen te zetten. Dan lijnt het mooier uit.

Edit: ik zie net dat dit CultureInfo heet binnen C#.

[ Voor 14% gewijzigd door Matis op 15-08-2018 22:49 ]

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • +1 Henk 'm!

  • laurens0619
  • Registratie: Mei 2002
  • Laatst online: 17:14
Met @Matis
Met culteinfo, dit geef je dan als 2e parameter aan de parse optie mee. Hij pakt standaard je windows settings die waarsch dus op komma staan als decimal teken. Dat veranderen in je os werkt ook maar beter het in de code op te lossen

Bv:
code:
1
double.Parse("3.5", CultureInfo.InvariantCulture)


Of je zet hem globaal:
code:
1
Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;

[ Voor 55% gewijzigd door laurens0619 op 15-08-2018 23:01 ]

CISSP! Drop your encryption keys!