-
Hallo Leute. Ich versuche gerade eine Datei an einer bestimmte Stelle einzulesen, diese dann bisschen zu verändern und wieder abzuspeichern.
Datei: test.csv
Sieht so aus:
++++++++++++++++++++++++++++++++++++++++++
Parameter:
++++++++++++++++++++++++++++++++++++++++++
W-wert : 100.00
I-wert : 0.015000
K-wert : 0.000002
Intervall - untere Grenze: 100.00
Intervall - obere Grenze: 1000.00
Schritte : 21
++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++
Parameter:
++++++++++++++++++++++++++++++++++++++++++
+--------------------------------------------------------+
|# F R I B P |
+--------------------------------------------------------+
|1. 100.0000 0.0129 0.1128 0.0129 83.4786 |
|2. 145.0000 0.0274 0.1632 0.0274 80.4773 |
|3. 190.0000 0.0476 0.2129 0.0476 77.4024 |
|4. 235.0000 0.0739 0.2615 0.0739 74.2303 |
|5. 280.0000 0.1067 0.3087 0.1067 70.9375 |
+--------------------------------------------------------+
Ich möchte eine Ausgabe haben, die so aussieht (nur den Teil verändern, der obere Teil soll weiterhin erhalten bleiben):
+--------------------------------------------------------+
|# F, R, I, B, P , |
+--------------------------------------------------------+
|1. 100.0000, 0.0129, 0.1128, 0.0129, 83.4786 |
|2. 145.0000, 0.0274, 0.1632, 0.0274, 80.4773 |
|3. 190.0000, 0.0476, 0.2129, 0.0476, 77.4024 |
|4. 235.0000, 0.0739, 0.2615, 0.0739, 74.2303 |
|5. 280.0000, 0.1067, 0.3087, 0.1067, 70.9375 |
+--------------------------------------------------------+
Also einfach an diesen Stellen ein Komma als Trennzeichen ergänzen. Ich glaube man sieht es hier nicht so gut, aber es soll eine Art Tabelle darstellen.
Jeder Buchstabe (F,R,I,B,P) gehört zu einer Spalte.
Leider wüsste ich nicht, wie ich an diese bestimmte Stelle komme und wie ich das komma dort reinschreien könnte. Es ist nicht notwendig, dass man auf der Konsole überhaupt was sieht. Was ich erreichn will ist nur, dass am Ende, wenn die Datei erstellt wurde, das vorhandene Überschrieben wird (also mit komma als Trennzeichen drin steht).Code c:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
int main(void) { FILE *datei = NULL; //liste(datei, ','); mit dem Trennzeichen "," aufrufen liste(datei); printf("\n\n"); return 0; } void liste(FILE *datei)//Hier Parameter hinzufügen: char zeichen { int c = 0; datei = fopen("test.csv", "r+"); if(datei != NULL) { while( (c=fgetc(datei)) != EOF ) putchar(c); } else printf("\nKonnte nicht gefunden werden"); fclose(datei); }
Könnt ihr mir tips geben, wie man sowas realsieren kann?
Gruß
Manda
-
Am besten ist vielleicht, immer ein komplette Zeile einzulesen.
Dann musst du immer prüfen, ob du nun an dem zu editierenden Block angekommen bist. Das kann man mit strncmp bewerkstelligen. Wenn dies der Fall ist, dann kannst du mit fscanf, fprintf und vielen unterschiedlichen Formatierungszeichen die Kommas einfügen (Immer Zeile für Zeile).
Das sollte für den Anfang helfen.
Viele Grüße
Ähnliche Themen
-
download an bestimmer stelle des files starten?
Von BrainDamage im Forum .NET Web und KommunikationAntworten: 6Letzter Beitrag: 16.03.06, 10:01 -
pdf-Dokument lesen,verändern,speichern?
Von heiko263 im Forum .NET Windows FormsAntworten: 2Letzter Beitrag: 24.10.05, 10:14 -
Lesen einer Zeile, ab bestimmter Stelle
Von Blind Guardian im Forum JavaAntworten: 11Letzter Beitrag: 23.11.04, 15:01 -
an bestimmter Stelle in txt datei schreiben
Von Grunz im Forum PHPAntworten: 2Letzter Beitrag: 19.06.02, 18:36 -
datei lesen ok - datei lesen = permission denied
Von dune911 im Forum PHPAntworten: 7Letzter Beitrag: 11.05.02, 15:40



Zitieren
Login





Lesezeichen