"mydata.txt"というファイルの中に(x、y)の値を表示することになっています。しかし、何らかの理由で私は次のエラーメッセージが表示されます。 "エラー:出力ファイルmydata.txtを開くことができません"プログラムがテキストファイルを作成するはずか、ファイルを作成するはずです。私は後者を試しましたが、それはまだ動作しませんでした。ここに私のコードは次のとおりです。私はそれを実行したときにストリームを使ってファイルを書き込む
#include "std_lib_facilities_5.h"
class Point{
public:
int x;
int y;
// Coordinate members x and y
Point(int nn = 0 , int mm = 0): x(nn), y(mm){}
friend ostream& operator<< (ostream &out, const Point &point);
};
ostream& operator<<(ostream& os, const Point& point){
os << point.x << " " << point.y;
return os;
}
int main()
try {
int x1, x2;
vector<Point> original_points;
for(int i = 0; i < 7; ++i) {
cout << "Please input coordinate points as (x,y): ";
cin >> x1 >> x2;
original_points.push_back(Point(x1,x2));
}
for(int i = 0; i < 7; ++i){
cout << "Original points: " << original_points[i] << endl;
}
string outputFile = "mydata.txt";
ofstream ost {"mydata.txt"};
ost.open(outputFile,ofstream::out);
if(!ost) error("can't open output file ", outputFile);
for(int i = 0; i < original_points.size(); ++i){
ost << original_points[i] << " " << original_points[i];
}
ost.close();
}
catch (exception& e) {
cerr << "error: " <<e.what() << '\n';
return 1;
}
catch (...) {
cerr << "Oops: unknown exception!\n";
return 2;
}
そして、ここでは、出力されます。
Please input coordinate points as (x,y): 1 2
Please input coordinate points as (x,y): 1 1
Please input coordinate points as (x,y): 2 2
Please input coordinate points as (x,y): 3 3
Please input coordinate points as (x,y): 4 4
Please input coordinate points as (x,y): 5 5
Please input coordinate points as (x,y): 6 6
Original points: 1 2
Original points: 1 1
Original points: 2 2
Original points: 3 3
Original points: 4 4
Original points: 5 5
Original points: 6 6
error: can't open output file mydata.txt
Program ended with exit code: 1
はい私はそれをしました。 "mydata.txt"という名前のファイルを作成して同じフォルダに入れます –
@ scohe001別途指定しない限り、出力ファイルストリームを開くとファイルが作成されます。 – molbdnilo