Guten Tag,
Ich versuche eine XML Datei von einer Website auszulesen und in einer Textbox bzw. einer textdatei anzeigen zu lassen.
Leider habe ich dazu nix gefunden, wäre für tipps dankbar.
Gruß Arthuro
Einfach mit einem StreamReader wie eine Textdatei einlesen:
Hierfür brauchste System.IO
StreamReader myFile = new StreamReader("XMLLINK", System.Text.Encoding.Default);
sContent = myFile.ReadToEnd();
textBox1.Text = sContent;
myFile.Close();
oder wenn du sie anschliessend bearbeiten willst kannst du mit
XmlDocument doc = new XmlDocument();
try
{
doc.Load("XMLINK");
}
herumexperimentieren. Musste aber vorher (using System.XML) machen
Vielen Dank erstmal....
Oh sorry,
musste vorher den String definieren mit
string sContent;
Habe das jetzt mit einem WebClient gemacht aber wie lese ich den String den jetzt aus und zeige in in der Textbox an ?
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Xml;
using System.Net;
namespace xml
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Auslesen_Click(object sender, EventArgs e)
{
// XmlReader reader = new XmlTextReader("http://www.heise.de/newsticker/heise-atom.xml");
//StreamReader myFile = new StreamReader("http://www.heise.de/newsticker/heise-atom.xml", System.Text.Encoding.Default);
//string sContent = myFile.ReadToEnd();
//textBox1.Text = sContent;
//myFile.Close();
WebClient wc = new WebClient();
String inhalt = wc.DownloadString("http://www.heise.de/newsticker/heise-atom.xml");
}
}
}
Das ist ganz einfach:
webBrowser1.Navigate("XMLURL");
textBox1.Text = webBrowser1.DocumentText;
Liebe Grüsse,
Sebastian
Hi Arthuro,
WebClient wc = new WebClient();
string inhalt = wc.DownloadString("http://www.heise.de/newsticker/heise-atom.xml");
textBox1.Text = inhalt;
Gruß, maYer
Ups sorry hatte mich da verlesen und hab WebBrowser statt WebClient verstanden. Naja der Herr über uns hats schon perfekt erklärt 😉
Ich versuch das jetzt alles in einer Datei abzuspeichern. Hab den nötigen Befehl dafür auch schon gefunden aber jetzt erhalte ich so eine komische fehlermeldung:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Xml;
using System.Net;
namespace xml
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Auslesen_Click(object sender, EventArgs e)
{
// XmlReader reader = new XmlTextReader("http://www.heise.de/newsticker/heise-atom.xml");
//StreamReader myFile = new StreamReader("http://www.heise.de/newsticker/heise-atom.xml", System.Text.Encoding.Default);
//string sContent = myFile.ReadToEnd();
//textBox1.Text = sContent;
//myFile.Close();
WebClient wc = new WebClient();
String inhalt = wc.DownloadString("http://www.heise.de/newsticker/heise-atom.xml");
File.WriteAllText();
textBox1.Text = inhalt;
}
}
}
Keine Überladung für die WriteAllText-Methode nimmt 0 Argumente an.
Hi Arthuro,
wenn du die erste Klamme nach WriteAllText gemacht hast, poppt ein kleines Fenster auf, wo die Informationen drin stehen was du übergeben mußt.
Versuche diese Informationen einmal zu übergeben. Dann sollte es funktionieren.
Gruß, maYer
:rtfm: Doku wäre ne Idee 🙂 Du musst dem WriteAllText auch sagen was du denn überhaupt, wo hinspeichern willst.
WebClient wc = new WebClient();
String inhalt = wc.DownloadString("http://www.heise.de/newsticker/heise-atom.xml");
File.WriteAllText(string s = "C:\\Test.txt");
textBox1.Text = inhalt;
Ungültiger Ausdruck für string warum ?
Vielen Dank an alle.
Hier nur die Lösung:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Xml;
using System.Net;
namespace xml
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Auslesen_Click(object sender, EventArgs e)
{
WebClient wc = new WebClient();
string adresse = "http://www.heise.de/newsticker/heise-atom.xml";
string inhalt = wc.DownloadString(adresse);
textBox1.Text = inhalt;
string datei = "C:\\Test.txt";
File.WriteAllText(datei, inhalt);
}
}
}
Sieht gut aus, nur fürs nächste mal würd ich mir mal die Methoden genauer anschauen und bei Fragen auch mal die MSDN oder Google zu Rate ziehen 😉 👍