これは、コマンドラインからファイルの名前を取得してファイルを開き、ファイルの内容を行ごとに文字列に保存する方法です。ファイルの先頭にある 3 つの空のスペースを除いて、すべての手順は正常に機能します。これらの空のスペースが発生した理由と、それらを無視するにはどうすればよいか、誰かが言うことができますか?
string filename = "input.txt";
char *a=new char[filename.size()+1];
a[filename.size()]=0;
memcpy(a,filename.c_str(),filename.size());
ifstream fin(a);
if(!fin.good()){
cout<<" = File does not exist ->> No File for reading\n";
exit(1);
}
string s;
while(!fin.eof()){
string tmp;
getline(fin,tmp);
s.append(tmp);
if(s[s.size()-1] == '.')
{
//Do nothing
}
else
{
s.append(" ");
}
cout<<s<<endl;