• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

C++: Eingegebener "Double" als Dateiname?

Mac-User09

Tokyo Rose
Registriert
06.11.14
Beiträge
71
Hallo,

ich habe eine Frage zum benennen von Dateien mit C++. Ich habe Daten, die das Programm berechnet und die in eine TXT-Datei geschrieben werden. Das Programm erhält zwei von Benutzer eingegebene double, die ich gerne im Dateinamen hätte. Wie geht das?

Ich weiß nicht, wie ich hier Code eingeben kann. Ich nutze fstream:

double f
double d
cin >> f >> d;
fstream file;
file.open("test.txt", ios::out);


Ich möchte nun, dass die Datei "test-fd.txt" heißt, wobei "f" und "d" die "f" und "d" sind, die ich über "cin" eingegeben habe. Wie geht das?
 
Du musst die double Werte in strings casten.
 
Ok. Und wie genau geht das? Muss noch etwas eingebunden werden an Header?
 
Ja, string.h ist dein Freund. Danach kommst du mit strcat ans Ziel.

Da es nicht viele C-Standardbibiliotheken gibt, die noch grundlegendere Funktionen beeinhalten - ausser vielleicht stdio.h - empfehle ich die Investition in ein Buch, wenn du selbst sowas nicht selbst weisst bzw. herausfinden kannst.
 
Eine Möglichkeit den Dateinamen zusammen zu setzen wäre:
Code:
#include <sstream>

std::ostringstream filenameStream;
std::string filename;

filenameStream << "test-" << f << "-" << d << ".txt";
filename = filenameStream.str();
 
  • Like
Reaktionen: hosja