オープンしたファイルは必ずクローズする掟
C++などでは、ファイルをオープンすると、プログラムから見たカレントフォルダに指定ファイルがあるか探す
ただし、visual studio上からプログラムを実行するときは、VSのプロジェクトのあるフォルダにあるファイルを探します。
file path(ファイルパス) 相対パス(自分のいるフォルダからの関係で指定) 絶対パス(ドライブの根っこから自分で指定) C:\Users\y.sato\source\repos\file_inout_sample フォルダ指定に注意しないと、他人に渡したときに読めなくなるよ! 1行まるっと読み込んで、テキスト解析→データに 数字は数値に 文字は文字に
#include <iostream> #include <fstream> #include <string> using std::cout; using std::cin; using std::string; using std::endl; using std::ofstream;//アウトプットファイルストリーム using std::ifstream;//インプットファイルストリーム int main() { //ofstream out_file;//ファイルストリームのインスタンスを作成 //string fpath = "C:\\Users\\y.sato\\source\\repos\\file_inout_sample\\"; //string fname = "output.txt"; //string openFileName = fpath + fname; //out_file.open(openFileName, std::ios::app|std::ios::out);//ストリームがオープンする //if (out_file.fail()) //{ // cout << "そんなファイルはない!" << endl; // exit(0); //} //int idata = 10; //char cdata = 's'; //float fdata = 3.14; //string str = "Hi! I'm very very happy today."; //out_file << str << endl;//ストリームにデータを流す //out_file << idata << "," << cdata << "," << fdata << endl; //out_file.close();//ストリームを閉じる ifstream input_file; //string fpath = "C:\\Users\\y.sato\\source\\repos\\file_inout_sample\\"; string fname = "output.txt"; //string openFileName = fpath + fname; input_file.open(fname, std::ios::in); if (input_file.fail())//エラー処理は大事 { cout << "ファイルオープンに失敗" << endl; exit(0); } string indata; //input_file >> indata; std::getline(input_file, indata); cout << indata; //string str1 = "3.14" //stringstream ss(str1); //double var; //ss >> var; input_file.close(); return 0; }