[问题] 大量写档无法实现

楼主: kevinqazwsx (Irean)   2016-03-25 01:33:49
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
问题(Question):
想进行大笔资料档案处理
要利用CSV档的特性 逐行读取
取出可用于 阵列的数值
预期的正确结果(Expected Output):
预期是 每读一行开一个档案 档案编号从0.txt开始
逐一增加
错误结果(Wrong Output):
结果只开一个档案..
程式码(Code):(请善用置底文网页, 记得排版)
int main(){
ifstream out;
ofstream in;
int cou=0;
char buffer[9999];
char format[]=".txt";
char c[4];
out.open("Book1.csv");
if(!out)
{
cout<<"file is failed"<<endl;
}else
{
while(!out.eof())
{
out.getline(buffer,sizeof(buffer));
itoa(cou, c, 10);
strcat(c, format);
in.open(format, ios::out);
if(!in) cout << "file is failed " << endl;
in<<buffer;
cou++;
in.close();
cout<<buffer<<endl;
cout<<c;
}
}
system("pause");
return 0;
}
补充说明(Supplement):
作者: Schottky (顺风相送)   2016-03-25 01:44:00
你把打算要 open 的档名 print 出来就知道问题在哪了我也常常这样 XD请教一个问题,在本板常看到像你一样,贴出来的程式码缩排没对齐乱掉的,是原本就没缩好还是剪贴时才乱掉的?我是用 indent 指令重排一次才看懂阶层架构的
作者: petercoin (彼得币)   2016-03-25 11:05:00
我猜是用tab写code但是tab没有被space取代?
作者: james732 (好人超)   2016-03-25 12:27:00
话说都用C++了,考虑用string代替char[]吧
作者: tinlans ( )   2016-03-28 12:09:00
他大概想省下用 .c_str () 丢 fstream 的时间 XD
作者: BlazarArc (Midnight Sun)   2016-03-28 12:52:00
C++11 有 string overload 啊
作者: Schottky (顺风相送)   2016-03-28 14:20:00
这基本上还是在写 C,只不过误用了 iostream 而已

Links booklink

Contact Us: admin [ a t ] ucptt.com