tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
1341
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von fastfred
    fastfred fastfred ist offline Mitglied Silber
    Registriert seit
    Sep 2005
    Beiträge
    82
    Hallo Community,
    ich habe ein Problem!
    Ich möchte aus einer XML Datei mehrere Werte in in eine Drop&Down Liste lesen. Das funktioniert auch wunderbar.
    Jetzt ist mir nur aufgefallen, wenn ich über den OpenFileDialog eine Grafik lade um den Hintergrund in einem Panel meiner Anwendung zu ändern und dann nochmal die XML Daten lade, bleibt das Programm hängen. Visual Studio zeigt mir dann, dass die XML-Datei nicht im Ordner vorliegt, welcher der Ordner der geladenen Grafik ist.

    Hier ein Auszug des Codes für die XML Daten:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    private void mannschaft_SelectedIndexChanged(object sender, EventArgs e)
            {
                mannschaft.Items.Clear();
                System.IO.StreamReader sr = new System.IO.StreamReader(@"XML/Mannschaften.xml");
                System.Xml.XmlTextReader xr = new System.Xml.XmlTextReader(sr);
                System.Xml.XmlDocument mannschaftenxml = new System.Xml.XmlDocument();
                mannschaftenxml.Load(xr);
                System.Xml.XmlNodeList mannschaftnameItems = mannschaftenxml.SelectNodes("Mannschaften/Mannschaft");
     
                for (int i = 0; i < mannschaftnameItems.Count; i++)
                {
                    System.Xml.XmlNode Name = mannschaftnameItems.Item(i).SelectSingleNode("Name");
                    mannschaft.Items.Add(Name.InnerText);
     
                }
            }
    Ich denke mal, dass der Fehler daran liegt, dass der System.IO.StreamReader noch den Dateipfad vom OpenFileDialog mit drin hat. Kann man das irgendwie ändern?

    Gruß

    Fast Fred
     

  2. #2
    MCoder MCoder ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jul 2005
    Ort
    München
    Beiträge
    2.448
    Ich denke, du solltest dem StreamReader-Konstruktor besser einen kompletten absoluten Pfad übergeben. Damit gehst du solchen Problemen aus dem Weg.

    Gruß
    MCoder
     
    "The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
    --- Larry Wall

  3. #3
    Avatar von fastfred
    fastfred fastfred ist offline Mitglied Silber
    Registriert seit
    Sep 2005
    Beiträge
    82
    Hi MCoder!
    Erstmal vielen Dank für deine Antwort.
    Mit dem Gedanken habe ich auch schon gespielt...
    Gibt es denn eine Möglichkeit(vllt. durch einen Befehl), den Ordner bzw.Pfad zu ermitteln, wo die Anwendung liegt, die man ausführt?

    Gruß

    Fast Fred
     

  4. #4
    MCoder MCoder ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jul 2005
    Ort
    München
    Beiträge
    2.448
    Den Pfad der Applikation bekommt man über die Assembly-Eigenschaften:
    Code cpp:
    1
    2
    3
    4
    5
    6
    
    using System.Reflection;
    using System.IO;
     
    Assembly assembly = Assembly.GetEntryAssembly();
    FileInfo fileinfo = new FileInfo(assembly.Location);
    string strAppDir = fileinfo.DirectoryName;

    Gruß
    MCoder
     
    "The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
    --- Larry Wall

  5. #5
    Avatar von fastfred
    fastfred fastfred ist offline Mitglied Silber
    Registriert seit
    Sep 2005
    Beiträge
    82
    Ja, es klappt !

    Vielen Dank nochmal!

    Gruß

    Fast Fred
     

Ähnliche Themen

  1. System Null Reference Exception ohne Visual Studio
    Von Marcolotti im Forum .NET Café
    Antworten: 5
    Letzter Beitrag: 08.03.09, 14:30
  2. Sporadisches Problem mit StreamReader
    Von jokakilla im Forum .NET Web und Kommunikation
    Antworten: 4
    Letzter Beitrag: 15.07.07, 22:00
  3. Visual C#: Problem mit System.IO.StreamReader
    Von fastfred im Forum C/C++
    Antworten: 3
    Letzter Beitrag: 21.05.06, 18:11
  4. TCP Problem: Lauschen an StreamReader ?
    Von JJB im Forum .NET Archiv
    Antworten: 0
    Letzter Beitrag: 15.06.04, 10:01
  5. [Sockets]Streamreader problem
    Von Badmaster im Forum PHP
    Antworten: 9
    Letzter Beitrag: 13.06.03, 19:54