Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » XML File aus verschiedenen Klassen lesen (TinyXml)

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
15.12.2006, 11:29 Uhr
~Georg88
Gast


Hallo Leute Schreibe Gerade an einem Programm wo ich gerne ein XML File aus mehreren verschiedenen Klassen lesen möchte.

Kann mier jemand von euch veraten wie ich das anstellen kann?

das prinzip soll ja so sein:


C++:
TiXmlDocument doc(file.xml);
if (!doc.LoadFile())
{                            
    // File konnte nicht geladen werden
}else
{
    // File konnte geladen werden

    TiXmlHandle docH( &doc);
    // File lesen nach belieben
}



Wie kann man das File im MainFrm laden und dan in anderen Klassen lesen? Oder geht das nicht? Wenn es nur einmal geladen wird ist doch die verarbeitung (lesen) viel schneller, als wenn man es jedesmal neu laden muss.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
16.12.2006, 12:21 Uhr
xXx
Devil


Hmm ... naja das ist net ganz so gut ... weil du dann die Datei die ganze Zeit geöffnet hättest ... solange wie dein Programm läuft wenn de es mit nem Singleton machst ...

d.h. warum schreibst du nicht einfach in der MainFrm oder wo auch immer deine Ladefunktion und setzt dann mit nem setter einfach die Werte der einzellnen Klassen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.12.2006, 08:51 Uhr
~Georg88
Gast


Habe mir gedacht das File im MainFrm zu laden und dann über eine get-Funktion zu lesen. Mein Grosses Problem ist aber nun, wie ich das global Definieren kann.

Also genauer gefragt: Wie und wo muss ich das 'doc' definieren und laden, dass ich es dann in einer Funktion im MainFrm lesen kann?


C++:
TiXmlDocument doc(file.xml);
doc.LoadFile())



Wäre super, wenn mier jemand bei meinem Problem helfen könnte. Bin noch ziemlicher Anfänger.

Gruss Georg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.12.2006, 18:59 Uhr
xXx
Devil


Naja ... du müsstest entweder in den globalen bereich legen oder als membervariable usw. ... dann existiert das doc objekt aber solange wie die anwendung bzw (bei membervariablen) die klasse geschlossen wird bzw. zerstört wird.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
16.01.2007, 15:33 Uhr
~sabine
Gast


Bin gerade auf diesen Beitrag gestossen. Habe das gleiche Problem.

Habe ein XML Sprachfile und muss andauernt aus verschiedenen Dialogen auf dieses Sprachfile zugreifen können. Habe mir nun gedacht, dass ich im MainFrm eine get- oder eben eine read-Funktion habe, mit der ich meine gewünschten Texte holen kann.

Finde es aber auch nit so toll, dass jedes mal wenn ich meine Funktion aufrufe das XML-File geladen werden muss. Das braucht ja auch seine Zeit. Und wenn ich vier Knöpfe entsprechend beschriften muss, kann es ja nicht sein, dass man für jeden Text das File neu öffnet.

Aber wie kann ich das ..

C++:
TiXmlDocument languageDoc(de.xml);
languageDoc.LoadFile())


so global im MainFrm definieren, dass ich 'languageDoc' in meiner Funktion im MainFrm verwenden kann.

gruss sabine
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: