主题:求助:fputs无法写入的问题
代码如下:
if((out=fopen(sendfile.c_str(),"w"))==NULL) {ShowMessage("发送文件无法写入。");return;}
for(int i=0;i<ListBox1->Items->Count;i++)
{
[color=FF00FF] fputs("start\n",out);//该处写入正常[/color]
if(ListBox1->Selected[i])
{
[color=FF00FF] fputs("start\n",out);//该处写入失败[/color]
readfile=ListBox1->Items->Strings[i].Trim();
if((in=fopen(readfile.c_str(),"r"))==NULL) {ShowMessage(readfile+"读取有误,请检查。");return;}
fclose(in);
list=new TStringList();
try{
list->LoadFromFile(readfile);
for(int i=0;i<list->Count;i++)
{
temp=list->Strings[i].Trim();
if(temp!="NNNN"&&temp!="")
{
temp+="\n";
[color=FF00FF] fputs(temp.c_str,out);//该处写入失败[/color]
}
}
}
__finally{
delete list;}
}
[color=FF00FF] fputs("end\n",out);//该处写入正常[/color]
fclose(out);
}
总之,一旦进入if(ListBox1->Selected[i])的范围内就无法写入文件,请问是什么原因呢?谢谢,请多指教。
if((out=fopen(sendfile.c_str(),"w"))==NULL) {ShowMessage("发送文件无法写入。");return;}
for(int i=0;i<ListBox1->Items->Count;i++)
{
[color=FF00FF] fputs("start\n",out);//该处写入正常[/color]
if(ListBox1->Selected[i])
{
[color=FF00FF] fputs("start\n",out);//该处写入失败[/color]
readfile=ListBox1->Items->Strings[i].Trim();
if((in=fopen(readfile.c_str(),"r"))==NULL) {ShowMessage(readfile+"读取有误,请检查。");return;}
fclose(in);
list=new TStringList();
try{
list->LoadFromFile(readfile);
for(int i=0;i<list->Count;i++)
{
temp=list->Strings[i].Trim();
if(temp!="NNNN"&&temp!="")
{
temp+="\n";
[color=FF00FF] fputs(temp.c_str,out);//该处写入失败[/color]
}
}
}
__finally{
delete list;}
}
[color=FF00FF] fputs("end\n",out);//该处写入正常[/color]
fclose(out);
}
总之,一旦进入if(ListBox1->Selected[i])的范围内就无法写入文件,请问是什么原因呢?谢谢,请多指教。