CodeBlocks "Can't read file's timestamp"
今天编程时遇到一个怪现象,CODEBLOCKS Can't read file's timestamp
。源程序很简单:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
// 1. 读文件
// 2. 写入新文件
ifstream infile;
//ofstream outfile("output");
// string filename("E:\03_lang\c51\remove_comment\input.txt");
string filename("input.txt");
infile.open( filename.c_str());
if( !infile.is_open() ){
cerr << "File open failed
";
}
string s;
while( getline(infile,s) )
cout << s << endl;
infile.close();
return 0;
}
开始怀疑文件路径不对,因此加了绝对路径。但是C::B编译仍然通不过。后来,怀疑程序错误,但是我却可以用GCC编译成功,因此方向转向了C::B设置。
通过查看项目文件,发现里面并没有input.txt
,只有input
文件。那么接下来就简单了,将原来文件从项目中移除,再将input.txt
文件添加到项目中,编译成功。也就是说,导致"Can't read file's timestamp"问题的关键并不是文件出现问题,而是项目中未添加文件。
注:为何会出现两个文件?这是由于自己后面直接通过文件管理修改了后缀。
很高兴,通过自己的分析一步一步地验证,最后解决问题。希望对大家有帮助。