Textdatei auslesen und eine andere Textdatei schreiben?
-
Keine Fehlermeldung, keine feld.txt ?
Na, irgend etwas muss doch passieren.
-
bis jetzt immer noch nicht wie gesagt die textdatei feld wird auch nicht ergeuzt.???

-
Von hier kann ich da auch nix machen. Schreib doch ein kleines Programm, das dir die verkehrsdaten.txt einliest und wieder ausgibt, dann hast du einen Ansatz und kannst ergänzen.
-
die textdatei feld wird jetzt erzeugt , aber nichts reingeschrieben also die bleibt leer??
-
Vielleicht gibt keine 'E' Zeile, die zu einer 'A' Zeile gehört, denn es werden nur Paare rausgefiltert.
Habe es bei mir probeweise laufen lassen und es hat funktioniert.Ansonsten musst du dich mit einem Debugger vertraut machen, oder Zwischenausgaben einbauen und dir anzeigen lassen.
-
müssen die 'A' und 'E' zeile (paarweise) in der textdatei Verkehrsdaten in Reihenfolge kommen oder wie ?
-
azoul schrieb:
müssen die 'A' und 'E' zeile (paarweise) in der textdatei Verkehrsdaten in Reihenfolge kommen oder wie ?
Nö, die E-Zeile muss irgendwo unterhalb der A-Zeile auftauchen. Falls sie oberhalb gefunden werden soll, musst du den Dateizeiger an den Anfang setzen.
-
hallo B.B.
das Programm springt nie in dieser if Anweisung rein?if ( 0 == strcmp ( A, B )) { // Die zur A-Zeile zugeh�rige E-Zeile gefunden. A [0] = ANFANG; addAB ( A, B, Result ); // Unikat-Paar hinzuf�gen. break; // Bricht die innere while-Schleife ab. }weisst du wo das problem liegt?
-
azoul schrieb:
hallo B.B.
das Programm springt nie in dieser if Anweisung rein?
...
weisst du wo das problem liegt?Das ist gut möglich, das hängt von deiner Datei verkehrsdaten.txt ab.
Angenommen, dort gibt es eine Zeile, die so aussieht:
A 192.168.0.84 5996 192.168.0.221 5890 0 user0 useraUnd irgendwo weiter unten gibt es eine Zeile, die so aussieht:
E 192.168.0.84 5996 192.168.0.221 5890 0 user0 useraDann springt das Programm da auch rein. Sobald sich die Zeile aber mehr als nur um den einen Buchstaben, das 'E' unterscheidet, wird dort auch nicht reingehüpft.
-
die datei verkehrsdaten sieht so aus: z.B
A 192.168.0.84 6500 192.168.0.221 6380 0 user user1 A 192.168.0.84 6500 192.168.0.221 6380 0 user user1 A 192.168.0.84 6500 192.168.0.221 6380 0 user user1 E 192.168.0.84 6500 192.168.0.221 6380 user user1 A 192.168.0.123 5062 192.168.0.121 10014 8 user3 user4 A 192.168.0.84 6502 192.168.0.221 6382 0 user user1 A 192.168.0.84 6502 192.168.0.221 6382 0 user user1 A 192.168.0.84 6502 192.168.0.221 6382 0 user user1 E 192.168.0.84 6502 192.168.0.221 6382 user user1 E 192.168.0.123 5062 192.168.0.121 10014 user3 user4warum funktioniert dann nicht, obwohl die E Zeile immer nach A Zeile kommt??
-
Weil in deinen E-Zeilen die Codec-Nummern fehlen.
-
das habe ich auch vermutet muss damit morgen versuchen.
-
Kannst ja die Zeilen mit sscanf zerlegen, dann kannst du dir jedes einzelne Bestandteil einer Zeile angucken.
Wieso morgen erst, has du keinen Compiler zu hause ?
Und das so kurz vor der Abgabe !
-
B.B. schrieb:
has du keinen Compiler zu hause ?nein nicht deswegen brauche dafür meine ganze analyseplattform (Server telefone ...muss alles automatisch funktionieren) und das habe ich nicht zuhause
habe eben andere frage rein was mit zeitstempel wenn du mal eine idee hast?
danke noch mal für hilfe..
-
Naja, diese verkehrsdaten.txt-Geschichte, die könntest du doch auch zu Hause zum laufen kriegen.
Brauchst ja nur ne Textdatei mit deinen AE-Strings.
-
ja schon, habe ich versucht mit der Dev-C++ Compiler versucht aber irgendwie klappt nicht bekomme ein paar wahrnungen dafür habe keine lösung gefunden..deswegen
-
azoul schrieb:
ja schon, habe ich versucht mit der Dev-C++ Compiler versucht aber irgendwie klappt nicht bekomme ein paar wahrnungen dafür habe keine lösung gefunden..deswegen
Was für Warnungen denn? Warnungen sind keine Fehler und eventuell ganz unkritisch.
-
hallo B.B.
habe ich heute morgen versucht, hat alles geklappt. da ich Änderungen an Verkehrsdaten gemacht habe also das Codec zu 'E' zeile manuell hinzugefügt habe.
das problem jetzt ist es so: das codec könnte nur für 'A' zeile (nur am Anfang der telefonat werden die Codecs zwischen zwei user ausgehandelt) ausgelesen wird. am Ende der Telefonat werden keine Codecs ausgehandelt das hat zu folge dass das Codec in 'E' zeile nicht auftaucht. was kann ich an dem C-code ändern, dass das trotzdem funktioniert.
-
Du kannst die Zeilen in einzelne Komponenten aufteilen und diejenigen, die dich interessieren, miteinander vergleichen.
-
habe gemeint im C-code, der du gschrieben und geschickt hast. was kann ich da machen?