1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

CSV- Datei erstellen aus C

Discussion in 'Programmieren' started by shiggyvara, Jun 18, 2005.

Thread Status:
Not open for further replies.
  1. Ich muss ein Programm in C schreiben, das verschiedene Werte errechnet und anschließend in einer csv datei ausgibt. Das Programm zu schreiben war nur ein kleineres Problem, die Ausgabe der CSV datei schon ein größeres, weil ich einfach null ahnung habe.

    Mein Beispiel: Ich muss ein Prog schreiben, das die Biegelinie eines Trägers ausgibt (Funktion w(x) ). also hab ich den Träger in 50 Punkte eingeteilt und zu jedem Punkt die jeweilige Durchbiegung errechnet. und diese Werte sollen in einer csv datei gespeichert werden. wie geht das?

    hier ist mal abschnittsweise der quellcode, falls es hilft mehr zu verstehen...


    printf("Biegelinie wird berechnet...\n\n");


    for (z=1; z<51; z++)
    {
    double x = z * input.l/100;

    printf ("x=%.0f\t",x);

    //Jeweils die formel mit x berechnen

    output.w[z-1] = (input.F * pow(input.l,3) / (48 * input.e * input.iy) * ((3*x/input.l) - 4 * pow((x/input.l),3)));

    printf ("%0.6lf \n", output.w[z-1]);


    }

    danke...
     
  2. gerald_b

    gerald_b Kbyte

    Hi,


    CSV steht für CommaSeparatedValue - sprich die Werte in der Datei sind voneinander durch ein Komma getrennt. Zur Ausgabe Deiner Ergebnisse in die Datei nutzt Du fprintf. Dies sollte in einer Schleife laufen, quasi so:

    for (i=1;i<=50;i++)
    {
    fprintf(datei,ergebnis);
    fprintf(datei,",");
    }


    Viel Erfolg

    Gerald
     
  3. aha, danke. muss ich die auch vorher wie eine variable einfügen? d.h. dateiname und speicherort oder so?
     
  4. gerald_b

    gerald_b Kbyte

    Hi,


    also datei ist ein Zeiger auf die Datei (inkl. Verzeichnispfad).

    Hier http://www.cplusplus.com/ref/cstdio/fprintf.html findest Du die Definition von fprintf und auch ein Beispiel. Allerdings mußt Du beachten, dass es sich in Deinem Fall um eine CSV-Datei handeln soll und dabei ein Komma als Trennzeichen zwischen den einzelnen Werten stehen muß.


    Viel Glück

    Gerald
     
Thread Status:
Not open for further replies.

Share This Page