因此,如果以前未创建过文件,则应该创建一个文件,如果已创建,则将其写入该文件中.
So what it should do is create a file if it was not created before, and if it is created write into that file.
你好,所以我要从程序中检查文件是否已经存在,如果没有打开文件就可以打开程序,如果文件没有打开,我可以写入文件(还没有创建之前)创建程序.所以问题是当我创建一个.csv文件并完成写入时,我想检查写入的文件是否确实存在,无法打开该文件.在.txt文件中,所有内容均为空白.
Hello there, so what I wanted from my program is that it check if the file already exists, sothe program open if it does and I can write in it, if the file is not opened(have not been created before) the program create it. So the problem is when I create a .csv file, and finish writing and I wanted to check if the written is really there, the file cannot be opened. In .txt file, everything is blank.
推荐答案datoteka.open(filename, std::fstream::in | std::fstream::out | std::fstream::app); 效果很好.
datoteka.open(filename, std::fstream::in | std::fstream::out | std::fstream::app); works fine.
#include <fstream> #include <iostream> using namespace std; int main(void) { char filename[ ] = "Informacije.txt"; fstream appendFileToWorkWith; appendFileToWorkWith.open(filename, std::fstream::in | std::fstream::out | std::fstream::app); // If file does not exist, Create new file if (!appendFileToWorkWith ) { cout << "Cannot open file, file does not exist. Creating new file.."; appendFileToWorkWith.open(filename, fstream::in | fstream::out | fstream::trunc); appendFileToWorkWith <<"\n"; appendFileToWorkWith.close(); } else { // use existing file cout<<"success "<<filename <<" found. \n"; cout<<"\nAppending writing and working with existing file"<<"\n---\n"; appendFileToWorkWith << "Appending writing and working with existing file"<<"\n---\n"; appendFileToWorkWith.close(); cout<<"\n"; } return 0; }更多推荐
如果文件存在,请使用它;如果不存在,请创建它
发布评论