Toon posts:

[Delphi] Text File of XML File?

Pagina: 1
Acties:

Verwijderd

Topicstarter
hi,

Het gaat om opslaan path\filename met filesize.

Huidige situatie:
Als een user een directory aangeeft worden de files die in de aangegeven directory staan opgeslagen in een memobox met de filesize in de volgende formaat:
code:
1
c:\config.sys|12345

en dan sla ik dit op in een txt.

ik wil weten of het zoeken naar een file in een text file op deze formaat sneller en makkelijk is of moet ik xml gebruiken?

Ik heb de volgende xml formaat in mijn gedachten:
code:
1
2
<dir='c:\'>
       <file='config.sys'> <filesize=12345>

ik denk dat xml structuur makkelijker is dan text file structuur. Het gaat namelijk om welke het snelst een file kan vinden.

kan iemand mij hier mee helpen en advies geven hoe ik het moet aanpakken?

alvast bedankt

Raju :)

  • Rickets
  • Registratie: Augustus 2001
  • Niet online

Rickets

Finger and a shift

XML heeft wel mijn voorkeur, omdat zowel een mens als een pc aan de elementen kan zien wat het voorstelt.
Als dat werkelijk je XML-structuur is die je wilt gaan gebruiken, is het verstandig om de basisprincipes van XML door te nemen.

If some cunt can fuck something up, that cunt will pick the worst possible time to fucking fuck it up, because that cunt’s a cunt.


Verwijderd

Topicstarter
kun je mij links geven waar ik tuts over creating xml docs and reading xml docs kan vinden?

liefst met voorbeelden :)

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:00

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 29 april 2004 @ 19:20:
kun je mij links geven waar ik tuts over creating xml docs and reading xml docs kan vinden?

liefst met voorbeelden :)
een XML bestand is beginsel gewoon een tekstbestand. Met Google moet je wel een en ander over XML-bestanden en Delphi kunnen vinden. :)

[ Voor 4% gewijzigd door gorgi_19 op 29-04-2004 19:23 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
is het beter om meerdere keren xml file te openen en closen? want stel een persoon stuurt een query naar een filename en ik ga in de xml file zoeken als now 200 mensen tegelijk een query sturen kan het i/o problemen oorzaken?

is het dan beter om de files in een listview op te slaan? tja hoe zit het met de geheugens en zo dan?

weet iemand iets hier over ?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:00

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 29 april 2004 @ 19:23:
is het beter om meerdere keren xml file te openen en closen? want stel een persoon stuurt een query naar een filename en ik ga in de xml file zoeken als now 200 mensen tegelijk een query sturen kan het i/o problemen oorzaken?

is het dan beter om de files in een listview op te slaan? tja hoe zit het met de geheugens en zo dan?

weet iemand iets hier over ?
Waarom gebruik je trouwens geen 'echte' database, zoals MySQL, MS Access, e.d.? Je probeert nu de functionaliteit van dit te stoppen in een tekstbestand of een XML-bestand, terwijl dit er helemaal niet voor bedoeld is.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Rickets
  • Registratie: Augustus 2001
  • Niet online

Rickets

Finger and a shift

Verwijderd schreef op 29 april 2004 @ 19:20:
kun je mij links geven waar ik tuts over creating xml docs and reading xml docs kan vinden?

liefst met voorbeelden :)
Uiteraard :)
Als je van redelijk abstracte leesstof houdt, kan je eens bij de Technical Reports van het W3c kijken. Daar staat dan de XML-specificatie.
Als dit nog te lastig is, kan je beginnen met de tutorial van w3schools.
En mocht je nog meer leesstof willen, dan biedt google uitkomst :)

[ Voor 19% gewijzigd door Rickets op 29-04-2004 19:26 ]

If some cunt can fuck something up, that cunt will pick the worst possible time to fucking fuck it up, because that cunt’s a cunt.


Verwijderd

Topicstarter
maarr voor file sharen gebruik je toch geen database!!

dc++ gebruikt een xml file die alle info bewaart tja dan moet ik bij elke client een db hebben is dat niet te veel werk dan een xml file?

Verwijderd

Topicstarter
ik heb net openxml geinstalleerd en op die site staat ook een voorbeeld over hoe je een xml doc aanmakt en leeest

maar mij gaat het nu om de geheugen en i/o want ik heb net gelezen dat xml is veel beter is dan een gewone text file zeker voor zoek werken!

  • PipoDeClown
  • Registratie: September 2000
  • Niet online

PipoDeClown

Izze Zimpell

Verwijderd schreef op 29 april 2004 @ 19:30:
maar mij gaat het nu om de geheugen en i/o want ik heb net gelezen dat xml is veel beter is dan een gewone text file zeker voor zoek werken!
kzou bijna zeggen: doe wat tests en time ze.

God weet alles, want hij is lid van de Mosad. To protect your freedom i will take that away from you. Mijn drankgebruik heeft ernstig te lijden onder mijn gezondheid.


Verwijderd

Verwijderd schreef op 29 april 2004 @ 19:23:
is het beter om meerdere keren xml file te openen en closen? want stel een persoon stuurt een query naar een filename en ik ga in de xml file zoeken als now 200 mensen tegelijk een query sturen kan het i/o problemen oorzaken?

is het dan beter om de files in een listview op te slaan? tja hoe zit het met de geheugens en zo dan?

weet iemand iets hier over ?[/b]
Tsja, als 200 mensen tegelijkertijd hetzelfde (XML-)bestand willen lezen kan dat om problemen vragen. Als het (XML-)bestand zelden veranderd kun je de inhoud hiervan in het geheugen opslaan en van daaruit zoeken. (bijvoorbeeld TList, TListview, etc.) Dit is altijd sneller dan het zoeken in een bestand.
Verwijderd schreef op 29 april 2004 @ 19:27:
maarr voor file sharen gebruik je toch geen database!!
Het doel heiligt de middelen.
Verwijderd schreef op 29 april 2004 @ 19:27:
dc++ gebruikt een xml file die alle info bewaart tja dan moet ik bij elke client een db hebben is dat niet te veel werk dan een xml file?
Lijkt mij ook niet dat dc++ constant in het xml-bestand gaat lopen zoeken. Zie opmerking hierboven.

Firebird embedded. Je hebt dan alleen een .DLL nodig en uiteraard een database.
Verwijderd schreef op 29 april 2004 @ 19:30:
ik heb net openxml geinstalleerd en op die site staat ook een voorbeeld over hoe je een xml doc aanmakt en leeest

maar mij gaat het nu om de geheugen en i/o want ik heb net gelezen dat xml is veel beter is dan een gewone text file zeker voor zoek werken![/b]
xml geeft meer overhead, maar is wel flexibeler in het gebruik. Uitbreidingen van velden, etc. kunnen makkelijker gedaan worden.

Verwijderd

Topicstarter
de data is constant totdat de user de share refresht!

dus het wordt eenmaal gelezen en dan moet ergens opgeslagen worden zodat het zoeken naar een file sneller gaat.

Ik dacht om stringgrid te gebruiken dus memmory gebruiken om op te slaan, dan kan ik 3 velden maken, namelijk dir, filename,size dan kan ik makkelijk de filename zoeken en dan bijbehorende dir en fielsize gebruiken.

En bij xml is het flexibeler in het gebruik maar de i/o die de progje moet aanspreken voor elke keer lezen en zoeken van een bestand kan de programma laten vast lopen. Dan heb ik het over 200 gebruikers die een search query versturen.

En gebruiken van een db in de client side, weet ik nix van want ik weet nie of het nu beter is of het extra is dan het nodig is en of het sneller zult gaan.

welke raden jullie mij aan? ook graag effe melden waarom :)

en bedankt voor jullie antwoorden :)

  • FendtVario
  • Registratie: Januari 2002
  • Laatst online: 12-05-2025

FendtVario

The leader drives Vario!

Als je dat als XML wilt opslaan moet je eens kijken naar de XML tranform componenten, daarmee kun je een XML vertalen naar een dataset (clientdataset) en een dataset naar XML. Dan hoef je niet direct te leren werken met een parser maar kun je gewoon de insert, append, edit en delete procedure gebruiken.

www.fendt.com | Nikon D7100 | PS5


Verwijderd

Topicstarter
hey guys

ik heb stringgrid gebruikt om de files op te slaan en te zoeken, opslaan ging snel en zoeken ook nog :D

maaaar ze hebben geen .clear methode :( dus ik had zo iets gedaan dat je de laatste lege rij gaat assign als huidige en zo en het maakt de lijst wel leeg

wat ik wou vragen is ik ben .free tegen gekomen, en in de help staat dat ie memory vrijmaakt, waar moet ik dit aanroepen? in from destroy?

en is het mogelijk for errors als er 200 users een query verzenden en dat die de lijst moet zoeken?

ik heb wel application.processmessages; in elke loop gezet weet genoeg is.

tips pls :)
Pagina: 1