Hallo,
ich lese mit :
xmldoc.Load(@"ccd.xml");
// Erzeugen eines XmlElements
XmlElement obRoot = xmldoc.DocumentElement;
foreach(XmlNode obXMLNode in obRoot.ChildNodes)
{
double owidth = Convert.ToDouble(obXMLNode.SelectSingleNode("width").InnerText);
folgende XML-Elemente ein:
<CCD>
<width>4.9</width>
<height>3.7</height>
<text>1/3" (4.9 x 3.7mm)</text>
</CCD>
Problem: in owidth steht 49.0 statt 4.9?? Auch wenn ich in XML Datei 4,9 schreibe!
Danke für Eure Hilfe!
Daniel
Hallo hm_hm,
ich kann mir eigentlich nicht vorstellen, dass sowohl mit "4.9" also auch mit "4,9" bei Convert.ToDouble 49 rauskommt. In einem von beiden Fällen, ist das nachvollziehbar. Die Lösung ist die richtigen Einstellungen für Dezimal- und Tausendertrenner zu verwenden:
Convert.ToDouble-Methode (String, IFormatProvider)
herbivore
Hallo herbivore,
..., wenn im XML-File 4,9 steht gehts, ich hatte im falschen XML-File nacheditiert!
Danke! Wenn ich Dich schon mal dranhabe, wie handelt man denn externe Files in einem VS2005-Projekt?
Ich hab das XML manuell in den bin-Ordner kopiert, und mit LOAD(@"ccd.xml") geladen, was zum testen geht, aber sicher nicht der richtige weg ist.
XML-File und z.B. Bilder für Pic-Boxen unter Projekt/Ressorcen und dann wie weiter?
Sorry bin Anfänger!
Danke Daniel
Hallo hm_hm,
..., wenn im XML-File 4,9 steht gehts, ich hatte im falschen XML-File nacheditiert!
Wenn du nicht die invariante Culture verwendest, dann geht es aber nur auf Rechnern, auf denen Komma als Dezimaltrenner eingestellt ist.
Zu der anderen Frage. Bitte keine komplett neu Frage in einem Thread zu einem bestimmten Thema. Bitte mach einen neuen Thread in Infrastruktur auf. Ich kann sie Frage aber so oder so nicht beantworten, weil ich kein VS benutze.
herbivore
Ich weiß jetz nich gant was du meinst, aber es gibt allgemein 2 Möglichkeiten:
Die Datei soll auf der Festplatte gespeichert werden
So hattest du es ja. Vorteil is eben das auch andere Programme Zugriff haben.
Eine Ressourcendatei
Damit wird deine Datei mit in die exe (oder was auch immer) kompiliert. Damit hat man zumindest nich so einfach zugriff ^^