Painofangels
Grünschnabel
Hallo an alle!
Ich bin neu sowohl hier im Forum als auch beim Programmieren eher ein Neuling...
deshalb hoffe ich, ihr könnt mir ein kleines Programmiertechnisches Problem lösen^^
Und zwar möchte ich mir eine simple Liste erstellen, die dann in einer Textdatei gespeichert werden soll. Ich möchte aber auch gern eine Funktion einbauen, mit der man vorher während des Programmlaufs einen Namen für die neue Textdatei eingeben kann.
Ich habe mir das dann so gedacht:
so funktioniert es leider nicht. Der Compiler meldet einen Fehler.
Es geht hier speziell um die Zeilen:
da das ja nicht funktionierte, hab ich auch schon versucht, den Gesamten Pfad im Programm selbst einzugeben. also so:
aber das funktioniert leider genausowenig.
Der compiler sagt dazu: "cannot convert Parameter 1 from std::string to const char * "
ich hoffe, dass jemand mir helfen kann, oder noch eine andere Möglichkeit anbeiten kann^^
danke schonmal im Vorraus!^^
Ich bin neu sowohl hier im Forum als auch beim Programmieren eher ein Neuling...
deshalb hoffe ich, ihr könnt mir ein kleines Programmiertechnisches Problem lösen^^
Und zwar möchte ich mir eine simple Liste erstellen, die dann in einer Textdatei gespeichert werden soll. Ich möchte aber auch gern eine Funktion einbauen, mit der man vorher während des Programmlaufs einen Namen für die neue Textdatei eingeben kann.
Ich habe mir das dann so gedacht:
Code:
#include<iostream>
#include<string>
using namespace std;
void Schreiben(string name);
FILE *Datei;
int main(void)
{
char eingabe;
cout<< "Was moechten sie tun?"; '/n';
cout<< "Liste ansehen: a /n";
cout<< "Liste erweitern: e /n";
cout<< "Neue Liste erstellen: n /n/n";
cin >> eingabe;
if(eingabe == 'n')
{
string name;
cout<< "bitte den Namen fuer die neue Datei eingeben: /n";
cin>> name; '/n';
Datei = fopen("C:\\Entwicklung\\"name".txt","w");
fclose(Datei);
Schreiben(name);
}
}
void Schreiben(string name)
{
string Text;
Datei = fopen("C:\\Entwicklung\\"name".txt", "a");
while(true)
{
cout<< "/n geben sie jetzt den Text ein /n";
cin>> Text;
if(Text != "ende")
{
fprintf(Datei, Text);
}
else if(Text == "ende")
{
fclose(Datei);
break;
}
}
}
so funktioniert es leider nicht. Der Compiler meldet einen Fehler.
Es geht hier speziell um die Zeilen:
Code:
string name;
cout<< "bitte den Namen fuer die neue Datei eingeben: /n";
cin>> name; '/n';
Datei = fopen("C:\\Entwicklung\\"name".txt","w");
da das ja nicht funktionierte, hab ich auch schon versucht, den Gesamten Pfad im Programm selbst einzugeben. also so:
Code:
Datei = fopen(name,"w");
aber das funktioniert leider genausowenig.
Der compiler sagt dazu: "cannot convert Parameter 1 from std::string to const char * "
ich hoffe, dass jemand mir helfen kann, oder noch eine andere Möglichkeit anbeiten kann^^
danke schonmal im Vorraus!^^