Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 可以在屏幕上打印,但只打印文件中的一个内容_C++ - Fatal编程技术网

C++ 可以在屏幕上打印,但只打印文件中的一个内容

C++ 可以在屏幕上打印,但只打印文件中的一个内容,c++,C++,我写文件时有什么问题吗?它只打印文件中的一件东西,但可以在屏幕上完美打印。我对此一无所知。有人能帮忙解决吗?这段代码将打印我从文件中插入的项目列表 模板 boolbst::display2(BTNode*cur,整数顺序,整数源) { 流出的液体; //如果(!out)返回false; //如果(cur==NULL)返回false; 如果(顺序==1&&source==1){//以升序显示并打印到屏幕 如果(cur==NULL)返回false; 显示2(当前->左侧,订单,来源); 货物权利、订

我写文件时有什么问题吗?它只打印文件中的一件东西,但可以在屏幕上完美打印。我对此一无所知。有人能帮忙解决吗?这段代码将打印我从文件中插入的项目列表

模板
boolbst::display2(BTNode*cur,整数顺序,整数源)
{
流出的液体;
//如果(!out)返回false;
//如果(cur==NULL)返回false;
如果(顺序==1&&source==1){//以升序显示并打印到屏幕
如果(cur==NULL)返回false;
显示2(当前->左侧,订单,来源);
货物权利、订单、来源);
返回true;
}
如果(顺序==1&&source==2){//以升序显示并写入文件
out.open(“student info.txt”);
如果(!out){
系统(“CLS”);
cout left、order、source);
外项权利、订单、来源);
返回true;
}
如果(顺序==2&&source==1){//按降序显示并打印到屏幕
如果(cur==NULL)返回false;
显示2(当前->右侧、订单、来源);
无法保留项目、订单、来源);
返回true;
}
如果(顺序==2&&source==2){//按降序显示并打印到文件
out.open(“student info.txt”);
如果(!out){
系统(“CLS”);
权利、秩序、来源);
剩余项目、订单、来源);
返回true;
}
返回true;
}

您正在用每一行重写文件的内容。 您需要打开附加的文件。更改行

out.open("student-info.txt");


参见

混沌代码,很难理解。也许您改写了旧文件,并且必须“追加”模式?BTW系统(“CLS”)是反模式的,您可能会考虑将“OFFISH OUT”移动到外部级别范围,这样文件每次功能返回时都不会关闭(注意,CUT不关闭)这需要您计划何时关闭文件。您可以考虑在某个外部级别范围内使用“STD:STRIGSWATE OUT”。然后计划关闭和输出内容到OFFROW……可能在程序结束时(注意,在程序结束时CUT关闭)。
out.open("student-info.txt");
out.open("student-info.txt", std::fstream::app);