Forums Neueste Beiträge
 

Datei selektieren

28/02/2008 - 09:58 von Maurer Richard | Report spam
Hallo Ng,

Ich habe eine grundlegende Frage.

Wir haben eine Adressdatei mit fixem Aufbau. Alle Felder sind mit Làngen
ident. Nennen wird diese Uniorg.asc.
Wir bekommen von Kunden die Aufgabe Adressen einer anderen Datei aus
diesen uniorg.asc zu entfernen.
Natürlich bringen wir die Beide Dateien auf gleichen Nenner, dass
heisst, Satzlàngen sind gleich.

Nun soll das Programm auch mit 1 Mio. Adressen ansprechend laufen.
Also:
Beispiel: ich habe einen Adresspool mit 50000 Adressen und will daraus
10000 Adressen entfernen und den Rest als neue Datei verwenden.

Das wàre ja prinzipiell kein Problem die Logik ist ja eindeutig, aber
der Lauf dauert sehr lange, dass sind nur wenige Adressen was wenn das
mehr sind so 300000? .

Wie würdet Ihr das lösen, damit man nicht endlos am Rechner sitzt und
wartet, dass der fertig wird ?

Versuche:
Die Dateien zu lesen und Sàtze zu vergleichen und das pro Satz im
Adresspool. (schwachsinn gg)
Die Datei mittel ReadAllLines einzulesen, aber wo liegt die Grenze?
50000 mit Satzlànge 402 Byte = 20MB ? hm (300000 oder gar über 1 Mio?)

Tja, da kann ich mir gerade nicht vorstellen wie das funktioniert.

Falls Ihr da eine Idee habt wàre ich glücklich.
Google .. gute Idee, aber wie stelle ich die Frage, dass der weis was
ich will?

Lg Richie

Wenn Du einen WÜRDIGEN siehtst, dann trachte ihm NACHZUEIFERN. Wenn Du einen UN-würdigen siehst, dann PRÜFE Dich in Deinem INNERN! (Konfuzius)
 

Lesen sie die antworten

#1 Kerem Gümrükcü
28/02/2008 - 10:45 | Warnen spam
Hallo,

Wie würdet Ihr das lösen, damit man nicht endlos am Rechner sitzt und
wartet, dass der fertig wird ?



nun, ich würde überlegen,ob ich so viele Datensàtze nicht doch
in eine Datenbank packe, die man optimieren lann und die sehr
performant ist. Textdateien sind nicht so ganz richtig bei so wichtigen
Sachen und der Menge,...

Ansonsten kannst Du deinem Programm einen Prozessindikator, z.B.
eine Progressbar zufügen und das ganze Programm in mehrere Threads
aufbrechen. Vielleicht auch die Datei mit mehereren Threads aufgesplittet
lesen und zusammenführen, so das eine parralele Abarbeitung des Inhaltes
erfolgt und man so u.U,. schneller zum Ziel kommt, besonders, wenn man
einen Mehrkernprozessor hat der gutes Thread handling schafft.
Dementsprechend muss dein Programm auch ausgelegt sein,...als mit
saueberem threading und daten synchronisation!

Grüße

K.

Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Microsoft Live Space: http://kerem-g.spaces.live.com/
Latest Open-Source Projects: http://entwicklung.junetz.de
"This reply is provided as is, without warranty express or implied."

Ähnliche fragen