sortierte Ausgabe in ein .csv File
-
Hi Leute, ich hab hier ein File, in dem ich die Ausgabe in einem .csv File haben möchte, aufgeschlüsselt in zwei Spalten (Datum und Size). Kann mir da einer einen Tip geben ob und wie das zu machen ist?? Hab mal einen Auschnitt meines Codes, bisher schreibt er mir alles hintereinander in eine Zelle, wie fließtext, was nicht gerade sonderlich übersichtlich ist!! Sind des Programms soll sein, einen bestimmten teil aus einem bestehendem .txt file auszulesen und in, mit der oben beschr. sortierung, das .csv File einzutragen.
Danke Marc...
ofp = fopen("ausgabe.csv","w+");while (fgets(readbuffer, 100, ifp ) != NULL)
{
c = strstr(readbuffer, "Starting BFS");
if (c != NULL)
{
strncpy(&datum[0], &readbuffer[39], 11);
datum[11] = '\0';c1 = strstr(readbuffer, "(");
c2 = strstr(readbuffer, ")");
len = c2- c1 -2;
strncpy(size, c1 + 1, len);
size[len] = '\0';
fputs (datum, ofp), fputs (size, ofp);
}
-
Schreib anstelle der beiden fputs (das ist nicht falsch wird in Summe nur umständlich, du müsstest noch das newline mit rauschreiben)
dochfprintf(ofp,"%s,%s\n",datum,size);
Damit wird in einer mit einem newline beendeten Zeile erst das Datum den das "," danach size und zum Abschluss "newline" ausgegeben
Wenn du einen anderen Delimiter zwichen datum und size haben willst tausche das Komma degegen aus
-
Dank Pad, so einfach aber man kommt nicht drauf. Aber vielleicht kannst du mir nochmal weiterhelfen. Bisher gebe ich ja die datei zum durchsuchen manuel an, wie kann ich einen Pfad angeben, in dem er automatisch alle darin befindlichen Files durchsucht. Bzw. kann ich mir dann die suchergebnisse der verschiedenen files alle in neuen spalten der csv Datei ausgeben lassen?
Hier nach der Code zur Dateieingabe:printf (" Filename der Logdatei?");
scanf ("%s", filename);
if ((ifp = fopen (filename, "r")) == NULL)
{
printf( "Datei %s nicht gefunden\n", filename);
exit(1);
}
Danke, cu Marc
-
Pfade kennt ISO C leider nicht, da musst du OS eigene Erweiterungen benutzen.
btw. benutz doch bitte Code-Tags
-
Die entsprechenden Funktionen findest du in der Winapi ich glaube findfirst, findnext. Such mal in der Hilfe danach oder frag im WinApi forum.