Sziasztok!
Tudom, hogy nem teljesen ide tartozik, csak az XML miatt írtam ide.
Szóval van egy XML fájlom és abóól szeretném kiolvasni az < Import_tabla > elem < Import > eleminek a mezőinek az értékét.
És ugyanezzel a módszerrel szeretném kiolvasni az < Adasba_lista > -t is.
http://mysteryke.extra.hu/sajat.xml
Kutakodtam a neten, de elég sok módszert találtam, amelyekbe sikerült teljesen belezavarodnom, és egyik példában sem szerepelt hasonló szerkezetü XML fájl.
Valami egyszerü megoldást szeretnék kérni tőletek.
Köszi.
MysteryKe.
U.i.: Microsoft Visual Studio 2005 Professional-al fejlesztek .NET Framework 2.0 -val, C# nyelven.
Tudom, tudom,... én is szívesebben C++ -oznék, de ezt tanítják nekünk, ezt kell szeretni. :((((
- 3561 megtekintés
Hozzászólások
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Köszi Elbandi!
Örök hálám!
string fileName = Application.StartupPath + @"\sajat.xml";
XPathDocument doc = new XPathDocument(fileName);
XPathNavigator nav = doc.CreateNavigator();
// Compile a standard XPath expression
XPathExpression expr;
expr = nav.Compile("/BCS/Import_tabla");
XPathNodeIterator iterator = nav.Select(expr);
// Iterate on the node set
lbxVideos.Items.Clear();
try
{
while (iterator.MoveNext())
{
XPathNavigator nav2 = iterator.Current.Clone();
lbxVideos.Items.Add(nav2.Value);
}
}
Ma is bement egy kövér nő a cipőboltba? :D
Bocsi, ezt nem hagyhattam ki. Imádom a sorozatot :D:D
U.i.: És még egyszer köszi.
ápr. 30-ig börkötéssel meg minden fityfenével le kell adnom a szakdogámat...
Jobb később XML-ezni, mint soha.. :D
- A hozzászóláshoz be kell jelentkezni
aztán reggel felelek és rájövök hogy még valami nem működik... :D
- A hozzászóláshoz be kell jelentkezni
Ha nem akarsz külön függőséget behozni, akkor a System.Xml névtérben lévő osztályokat használva érdemes xml-t parszolni. Ez
az alaprendszer része és mono platformon is tökéletesen működik:
// Az si változó egy listener, akinek az xml eseményeket passzoljuk. A passzolás helyett persze a konkrét feldolgozást is beírhatnánk.
XmlReader read = new XmlTextReader(url);
while (read.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
{
si.startElement("", read.LocalName, read.LocalName, null);
break;
}
case XmlNodeType.Text:
{
char[] chs = read.Value.ToCharArray();
si.characters(chs, 0, chs.Length);
break;
}
case XmlNodeType.EndElement:
{
si.endElement("", read.LocalName, read.LocalName);
break;
}
}
}
A kódot innen másoltam ki, itt egy olyan osztály van, ami a Javás SAX parzer API-t valósítja meg a .NETes könyvtárra építve:
http://yamamap.svn.sourceforge.net/viewvc/yamamap/yamaMono/yamaMono/src…
- A hozzászóláshoz be kell jelentkezni
Nah...!
Még a reggelt sem kellett megvárnom.
Hogyan lehet a mezők értékeit különválasztani? ugyértem, hogy kiolvasáskor egyenként olvashassunk ki a mezőkből.
Mert a fenti kód, ami működött végre, az azt csinálja, hogy egy stringbe olvassa ki a 3 mező adatait, amit már nem lehet jól kezelni.
0C:\video1.avi0 nekem nem igazn jó
Külön változókba akarom beolvasni őket. PL:
sorszamLabel.Text: 0
urlLabel.Text: C:\video1.avi
kategoriaLabel: 0
??
- A hozzászóláshoz be kell jelentkezni
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load("http://mysteryke.extra.hu/sajat.xml");
XmlNodeList importNodes = xmlDocument.SelectNodes("/BCS/Import_tabla/Import");
foreach (XmlNode actualNode in importNodes)
{
Console.WriteLine(actualNode["Sorszam"].InnerText);
Console.WriteLine(actualNode["URL"].InnerText);
Console.WriteLine(actualNode["Kategoria"].InnerText);
}
Egyébként milyen külső körülmény akadályoz, hogy C++-ozz?
- A hozzászóláshoz be kell jelentkezni
Az idő. C# nyelven írom a szakdogámat.
Éveken struktúrált programozást tanultam.
Tavaly fél évig Pascal, majd fél évig C-t tanultam (érettségi utáni képzés, 1. éve (2 éves képzés)).
Majd 2. évben tanultuk volna a CBuildert, de mivel kevésen voltunk a programozó szakon, így a megszünt és mehettünk át egy másik suliba.
Ott az volt a gond, hogy az osztály, amelyhez csatlakoztunk, ők már az előző évben Java -ztak.
Tehát, már akkor is OOP-ztak. Én meg még mindíg nem tudok teljesen elszakadni a struktúrált programozástól, több idő kellene, hogy gondolkodásban is teljesen átáljak az OOP-ra.
Hó végére kell leadnom a szakdolit.
- A hozzászóláshoz be kell jelentkezni
Az, bizony, idő. Meg áldozat. Vér, könnyek. Másképp nem megy.
Viszont ha ezt nem szánod rá, teljesen felesleges dobni egy fikát a C#-ra. Igaz, ezzel sok ember szemében az übercool arc, a programnyelvek zseniális értője szerepben tűnhetsz fel, de semmit több. Viszont sok ajtót bezársz magad előtt.
- A hozzászóláshoz be kell jelentkezni