• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

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::oops:ut);


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?
 

hosja

Mutterapfel
Registriert
23.03.07
Beiträge
5.252
Du musst die double Werte in strings casten.
 

Mac-User09

Tokyo Rose
Registriert
06.11.14
Beiträge
71
Ok. Und wie genau geht das? Muss noch etwas eingebunden werden an Header?
 

Scotch

Bittenfelder Apfel
Registriert
02.12.08
Beiträge
8.038
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.
 

MacApple

Schöner von Bath
Registriert
05.01.04
Beiträge
3.652
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