MFC中怎么把系统输出的写入到文本中?

请问怎么在MFC框架中创建一个一个txt文本,并且把原来打算cout的东西写入到里面呢,具体对于缓冲流的过程还不是很清楚,所以希望dalao能不能详细一下具体的实现

mfc

7个回答

#include
#include
using namespace std;

 void CQ692407Dlg::OnBnClickedButton1()
{
    // TODO: Add your control notification handler code here
        ostringstream cout1;
    cout1 << "a=" << 123 << ".";
    string str = cout1.str();
    m_edit1 = (CString)str.c_str();
    UpdateData (FALSE);
    ofstream cout("c:\\1.txt");
    cout << "a=" << 123 << ".";
    cout.close();
}

1.c方法:
FILE* fp;
fp=fopen();
GetDlgItemText();//获取编辑框数据
fprintf();//将编辑框数据写入到fp文件指针内
fclose();

2.C++,fstream类的操作,不细说。

3.MFC的CFile操作:
CFile file;
CString strValue;
GetDlgItemText(IDC_EDIT,strValue);//获取编辑框数据
file.WriteString(strValue);
file.Close();

使用输出流重定向 fprintf(""1,txt",std::out)

int类型变量,直接写入文件,是16进制格式,占4个byte(char)大小。

要想将int写入文本文件并直观可见,需要先转换为字符串,再写入文件

先把你的数组内容转成字CSring 类型然后拼接起来
存放在一个cstring msg中,再把msg写入到文件中就可以了:
//在指定位置创建一个文件
CStdioFile m_file("D:\sendtoclient.txt",CFile::modeCreate|CFile::modeWrite);
//清空文件内容
m_file.SetLength(0);
//将结点表内容写入指定文件
m_file.WriteString(msg);
//关闭文件
m_file.Close();

图片说明

如果问题解决,麻烦帮我采纳下,谢谢

 #include <sstream>
#include <fstream>
using namespace std;
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
请问在mfc中,怎么把一个CString类型的字符写进.txt文件中?

我是直接用ofstream fout; fout.open("DrugInfo.txt"); fout<<...; 结果在文件中显示的貌似是CString这个变量的地址,求解怎么把汉字字符输入文件里面啊

MFC中读写文件问题 CArchive写入文件的是乱码

代码如下,写入文件之后再打开txt发现除了前面的学号,后面的都是乱码。各行写有注释,请各位帮忙看一下,我觉得可能是宽字节的问题,但是本人是小白不知道该怎么弄,谢谢各位。 ``` void Add::OnClickedIdbAdd() { // TODO: Add your control notification handler code here UpdateData(); if (!m_aComp || !m_aEng || !m_aMath || !m_aGym || m_aName=="" || m_aSno=="" || m_aMajor=="" ){ MessageBox(_T("请完善信息后再确认输入!"), _T("错误")); return; } //判断是否有空没有输入信息 if (m_aSno.GetLength() != 6){ MessageBox(_T("学号必须为6位数,请重新输入。"), _T("错误")); m_aSno = ""; UpdateData(FALSE); return; } //学号必须要6位数 CFile cf; if (!cf.Open(_T("D:\\SIMS.txt"), CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite)){ #if def_DEBUG afxDump << "unable to open file" << "\n"; exit(1); #endif } //判断是否打开文件成功 CArchive cas(&cf, CArchive::store); CArchive cal(&cf, CArchive::load); //两个CArchive,一个读一个写 CString strSno; CString strtemp; cf.SeekToBegin(); while (cf.GetPosition() != cf.GetLength()){ cal >> strSno; MessageBox(strSno); if (m_aSno == strSno){ MessageBox(_T("该学号已存在,请重新输入。"), _T("错误")); m_aSno = ""; UpdateData(FALSE); return; } //如果有重复就不写入 cal.ReadString(strtemp); //读完这一行剩下的数据以便进入下一行 } //不断执行直到文件尾 cf.SeekToEnd(); //符合条件了则开始写入,首先移动到末尾 cas << m_aSno << m_aName << m_aMajor << m_aComp << m_aMath << m_aEng << m_aGym << "\n"; //利用CArchive写入 m_aSno = ""; m_aName = ""; m_aMajor = ""; m_aComp = 0; m_aEng = 0; m_aGym = 0; m_aMath = 0; UpdateData(FALSE); //写完后自动清空对话框中内容 MessageBox(_T("添加成功"), _T("成功")); cal.Close(); cas.Close(); cf.Close(); } ``` 写入到文件之后,打开txt结果是这样的。 ![图片说明](https://img-ask.csdn.net/upload/201506/02/1433241231_251211.png) 不知道这是什么原因?我的vs2013默认的就是unicode。 另外我想知道如果向我上面那样用CArchive往文件里写数据,怎样才能写入一个换行符呢?还有就是CArchive有没有什么办法能够做到像ostream的<<一样能够使用setw来调整格式呢?小弟刚学,问题有点多,谢谢各位~

MFC中EDIT怎么让输出的内容添加行号,(C++)

在EDIT中的每一行前面带着行号输出???????????????????

vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊

vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊

c++怎样从txt文档中读取数据写入到三维矩阵中

用MATLAB获取了一幅彩色图像的像素值,得到一个400*300*3的三维矩阵,并保存到txt文档中,怎么写一个c++小程序,把txt中的数据写入到一个三维矩阵中? %读取第k个图像,所有像素 srcImg = imread(fullfile(SRC, srcName)); %保存像素值到txt文档,便于C++测试使用 fid = fopen('JPEG2TXT.txt', 'wt+'); if fid == -1, return, end % 写文件,按照红绿蓝顺序,每种颜色写成矩阵形式 for i = 1 : 3 for r = 1 : size(srcImg, 1) fprintf(fid, '%4i', double(srcImg(r, :, i))); fprintf(fid, '\n'); end fprintf(fid, '\n'); end fclose(fid); 以上是我在MATLAB中的部分源码,获取到的像素到的是400*300*3 unit8

MFC 如何动态显示列表内的数据

在一个MFC程序中定义了一个对话框类ShowOut。 并在其中添加了一个列表控件ShowList。在ShowOut.cpp中的OnInitDialog中调用 InsertColumn()函数添加行没有任何问题。 但是在程序的一个主菜单对应函数CTextView::OnShowCol()中定义ShowOut成员之后 调用ShowOut.ShowList.InsertColumn()函数就会在程序执行的时候报错。 ![图片说明](https://img-ask.csdn.net/upload/201507/23/1437662234_465603.jpg)

VC++操作txt文档,每个数据是换行了的

比如一个txt文件1.txt里面有30个浮点数,我想读取这30个数据并存到数组中, 按顺序在我画好的坐标轴上画点画线。然后获得一个新的数据的时候,移除数组的第一个,把新的数据添加到最后(保证数组数据最多30个),现在遇到的问题是: 1.我怎么把这30个数据读取并存到一个数组中? 2.移除数组中第一个数,把新的添加到数组的最后。 3.再把数组存到txt的时候,还是会换行。 希望大神能给点详细的代码注释,让我看一下,我试了好几天了,还是不成功。。(之前有大神建议过循环队列,但是我写的有问题,不知道该怎么解决)要是有别的想法建议希望大神指点指点。。(excle暂不考虑) 我用的vs2005,unicode

VS2010写入TXT文件时,自动给每个字符后加入空格

我用Windows API函数和C运行时库函数将一组字符创写入一个txt文件时,能够成功读写,但是写入的文件每个字符后都自动添加了一个空格, UpdateData(); FILE * fp = fopen("1.txt","w+"); if(fp==NULL) { MessageBox(_T("打开文件失败")); return; } DWORD bytes=m_strTextData.GetLength(); fwrite(m_strTextData,m_strTextData.GetLength(),1,fp); fclose(fp); 比如当我写入的字符串为wertyuui时,文本里显示的是w e r t ,其余的没有读进来,网上查找好像是因为编码的问题,请各位指教。

(急求大佬们的帮助)C++ 如何把文件中的数据写进vector再传给类

(C++ 如何把文件(文件一行存的是一个类对象的数据)中的数据读出存入到vector容器中,再传给一个临时类对象,或者有更好的方法?我是小白,有C和Python的一点基础 取出数据之后还可以修改再传进文件中,我想做的是银行管理系统,要做登录,存取款,转账,现在是被文件的读取给难住了,望大佬们指点.最好有点关键代码,谢谢qwq

vs2010 MFC 求处理txt文本文件的后1000个字符的代码。

我这里有一个软件会产生txt格式的记录文件,大小几兆的样子,十几万行,每行100左右个字符。 这个记录文件的内容是随时变化的。 我想在ontimer响应函数(不要回调)内用cstudiofile每隔1秒钟读一次这个txt文件。 并取文件的末尾**大约**50行放到cstringarray内,然后处理。 为了尽量在1秒内提取+处理完,请给出尽可能高效的**提取代码**, 最好能加入:预防某次的提取+处理超过1秒的情况, 因为我感觉超过1秒,本次处理会被下次ontime函数强制中断。谢谢。 我想先定位到文件末尾,取文件末尾位置。然后从末尾-5000的位置开始readstring,舍掉第一次readstring可能读到的半行。是否可行?

c++读取excel表格并将内容写入xml的几个问题

目前已经用mfc实现从excel中顺序读取内容,并按一定格式写入xml文档的小工具,但还有几个问题,希望有懂得人能来解答一下。1.最终生成的xml文档有语句声明是按GBK格式编码的,那么我的项目基于unicode编码或是多字节编码会对结果有影响吗(主要是担心将字符串写入xml的时候会受字符集影响)。2.若是excel单元格首字符为单引号’,会读取不到这个单引号,这个单引号的作用应该是将单元格设为文本格式,怎么解决呢?3.从excel单元格读取到的内容,我是先存储到_variant_t类型的变量中,再转换格式为CString字符串,最后转为string字符串,然后用fstream文件输出流写到xml文档中,有没有办法可以直接从excel中读取出CString类型的字符串呢?谢谢回答!

C++文件如何高效的进行文件插入或删除字符操作

例如:文件a.txt有内容"abcd",要求在"ab"之间插入字符'e'或者在"bcd"内删除字符'c'。 目前已知插入方法: 缓存文件内容,判断'e'的插入位置i,将'e'写入文件i的位置,然后将原文件位置i至文件尾的内容写入文件i+1的位置。 (有没有其他更高效的方法) 目前已知删除方法: 缓存文件内容,缓存中删除字符'c',然后将处理后的缓存覆盖写入原文件。 (有没有其他更高效的方法) 求大神们指点

怎么利用readLine()方法读取一个文本文件的最后一行并打印出来?

public static void main(String[] args) { File file = new File("D:/ALMR_access_log_L1_1.log"); BufferedReader reader = null; try { reader = new BufferedReader(new FileReader(file)); String temp = reader.readLine(); while(temp != null) { System.out.println(temp); temp = reader.readLine(); } // System.out.println(temp); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { reader.close(); } catch (IOException e) { e.printStackTrace(); } } }

读取文件内容时怎么处理空格问题?

在读取一个文本内容时,空格代表的字节数有时候是1有时候是2,所以读出来的字节数就会不一样,请问怎么处理空格问题??用C++编的代码

用c#编写一个学生信息添加程序,学生信息包括学号,姓名,性别

用c#编写一个学生信息添加程序,学生信息包括学号,姓名,性别,有不用数据库做出来的吗,之是一个简单的小程序

请问error LNK2019 和fatal error LNK1120该怎么解决啊

1>kcsj.obj : error LNK2019: 无法解析的外部符号 "void __cdecl Menu(void)" (?Menu@@YAXXZ),该符号在函数 "void __cdecl InfoOutput(int,int,int)" (?InfoOutput@@YAXHHH@Z) 中被引用 1>D:\课程设计\kcsj\x64\Debug\kcsj.exe : fatal error LNK1120: 1 个无法解析的外部命令 ![图片说明](https://img-ask.csdn.net/upload/201907/09/1562638419_230161.png) 请问这是什么问题 该怎么解决啊 下面是源代码: # include < conio.h > # include < iostream > using namespace std; # define M 20 //男子项目个数 # define W 20 //女子项目个数 # define N 20 //学校个数 # define NULL 0 void Menu(); //函数声明 typedef struct { char proname[10]; //项目名称 int pronum; //项目编号 int top; //取前3名或前5名积分,由用户自己定义 int range[5]; //名次 int mark[5]; //分数 }Pronode; typedef struct { char schname[20]; //学校名称 int schnum; //学校编号 int score; //总分 int Mscore; //男团体总分 int Wscore; //女团体总分 Pronode a[M+W]; //项目数组 }Schnode; Schnode s[N]; void Head() //头菜单界面 { cout<<" *************************************************"<<endl; cout<<" ***** 欢迎使用 *****"<<endl; cout<<" ***** 运动会分数统计系统 *****"<<endl; cout<<" *************************************************"<<endl; cout<<endl; } void MainMenu() //主菜单界面 { cout<<" *************************************************"<<endl; cout<<" ***** 主菜单 *****"<<endl; cout<<" *************************************************"<<endl; cout<<" ***** 1.输入信息 *****"<<endl; cout<<" ***** 2.输出信息 *****"<<endl; cout<<" ***** 3.查询信息 *****"<<endl; cout<<" ***** 4.调用信息 *****"<<endl; cout<<" ***** 5.关 于 *****"<<endl; cout<<" ***** 6.退出系统 *****"<<endl; cout<<" *************************************************"<<endl; cout<<" ***** 注:第一次运行本程序时请选择1号功能 *****"<<endl; cout<<" *************************************************"<<endl; } void SubMenu() //总分显示菜单界面 { cout<<" *************************************************"<<endl; cout<<" ***** 运动会总分显示菜单 *****"<<endl; cout<<" *************************************************"<<endl; cout<<" ***** 1.按学校名称输出 *****"<<endl; cout<<" ***** 2.按学校总分输出 *****"<<endl; cout<<" ***** 3.按男团总分输出 *****"<<endl; cout<<" ***** 4.按女团总分输出 *****"<<endl; cout<<" ***** 5.退出返回主菜单 *****"<<endl; cout<<" ***** 6.直接退出本系统 *****"<<endl; cout<<" *************************************************"<<endl; } void InitSch() //初始化信息 { int i; for(i=0;i<N;i++) { s[i].score=0; s[i].Mscore=0; s[i].Wscore=0; } } void InfoInput(int n,int m,int w) //信息输入模块 { int i,j,k,p; InitSch(); //初始化信息 for(i=0;i<n;i++) //输入学校信息 { cout<<" 学校名称:"; cin>>s[i].schname; cout<<" 学校编号:"; cin>>s[i].schnum; for(j=0;j<m+w;j++) //输入各学校内项目信息 { cout<<" 项目名称:"; cin>>s[i].a[j].proname; cout<<" 项目编号:"; cin>>s[i].a[j].pronum; cout<<" 取前3名还是前5名:"; cin>>s[i].a[j].top; cout<<" 此项目获得的名次个数:"; cin>>k; for(p=0;p<5;p++) //初始化排名和分数 { s[i].a[j].range[p]=0; s[i].a[j].mark[p]=0; } for(p=0;p<k;p++) //输入所获名次信息 { cout<<" 名次:"; cin>>s[i].a[j].range[p]; if(s[i].a[j].top==3) //匹配各名次对应的分数 { switch(s[i].a[j].range[p]) { case 0: s[i].a[j].mark[p]=0; break; case 1: s[i].a[j].mark[p]=5; break; case 2: s[i].a[j].mark[p]=3; break; case 3: s[i].a[j].mark[p]=2; break; } } else { switch(s[i].a[j].range[p]) { case 0: s[i].a[j].mark[p]=0; break; case 1: s[i].a[j].mark[p]=7; break; case 2: s[i].a[j].mark[p]=5; break; case 3: s[i].a[j].mark[p]=3; break; case 4: s[i].a[j].mark[p]=2; break; case 5: s[i].a[j].mark[p]=1; break; } } s[i].score=s[i].score+s[i].a[j].mark[p]; //统计学校总分 if(j<=m-1) s[i].Mscore=s[i].Mscore+s[i].a[j].mark[p]; //统计男团总分 else s[i].Wscore=s[i].Wscore+s[i].a[j].mark[p]; //统计女团总分 } cout<<endl; } } } void Output(int b[],int n) //输出各学校运动会分数信息 { int i; for(i=0;i<n;i++) { cout<<" 学校名称:"<<s[b[i]].schname<<endl; cout<<" 学校编号:"<<s[b[i]].schnum<<endl; cout<<" 学校总分:"<<s[b[i]].score<<endl; cout<<" 男团总分:"<<s[b[i]].Mscore<<endl; cout<<" 女团总分:"<<s[b[i]].Wscore<<endl; cout<<endl; } system("pause"); //程序暂停,以显示结果 system("cls"); //清屏 } void InfoOutput(int n,int m,int w) //信息输出模块 { FILE *fp; int number,i,j,k,b[N]; if((fp=fopen("sport.txt","r"))==NULL) //以读方式打开文本文件 //并判定能否正常打开 { cout<<" 文件打不开!"<<endl; //不能正常打开文件的处理 exit(0); //调用函数exit终止程序运行 } while(1) { Head(); //头菜单界面 SubMenu(); //总分显示菜单界面 cout<<" 请选择:"; cin>>number; switch(number) { case 1: //按学校名称输出 system("cls"); Head(); //头菜单界面 cout<<" 运动会各学校信息按学校名称输出如下:"<<endl; for(i=0;i<n;i++) //输出各学校运动会分数信息 { cout<<" 学校名称:"<<s[i].schname<<endl; cout<<" 学校编号:"<<s[i].schnum<<endl; cout<<" 学校总分:"<<s[i].score<<endl; cout<<" 男团总分:"<<s[i].Mscore<<endl; cout<<" 女团总分:"<<s[i].Wscore<<endl; cout<<endl; } system("pause"); //程序暂停,以显示结果 system("cls"); //清屏 break; case 2: //按学校总分输出 system("cls"); Head(); //头菜单界面 cout<<" 运动会各学校信息按学校总分输出如下:"<<endl; for(i=0;i<n;i++) //冒泡排序,用辅助数组记住学校结点的下标 b[i]=i; for(i=0;i<n;i++) { for(j=i+1;j<n;j++) { if(s[b[i]].score < s[j].score) { k=b[i]; b[i]=b[j]; b[j]=k; } } } Output(b,n); //按所记下标的顺序输出各学校运动会分数信息 break; case 3: //按男团总分输出 system("cls"); Head(); cout<<" 运动会各学校信息按男团总分输出如下:"<<endl; for(i=0;i<n;i++) //冒泡排序,用辅助数组记住学校结点的下标 b[i]=i; for(i=0;i<n;i++) { for(j=i+1;j<n;j++) { if(s[b[i]].Mscore < s[j].Mscore) { k=b[i]; b[i]=b[j]; b[j]=k; } } } Output(b,n); //按所记下标的顺序输出各学校运动会分数信息 break; case 4: //按女团总分输出 system("cls"); Head(); cout<<" 运动会各学校信息按女团总分输出如下:"<<endl; for(i=0;i<n;i++) //冒泡排序,用辅助数组记住学校结点的下标 b[i]=i; for(i=0;i<n;i++) { for(j=i+1;j<n;j++) //n m w ???? { if(s[b[i]].Wscore < s[j].Wscore) { k=b[i]; b[i]=b[j]; b[j]=k; } } } Output(b,n); //按所记下标的顺序输出各学校运动会分数信息 break; case 5: //退出返回主菜单 system("cls"); Menu(); break; case 6: //退出系统 exit(0); default: cout<<" 对不起,无此功能,请输入正确的功能序号!"<<endl; system("pause"); system("cls"); InfoOutput(n,m,w); break; } } fclose(fp); //关闭文件 } void BMenu() //信息查询界面 { cout<<" *************************************************"<<endl; cout<<" ***** 1.按学校编号查询 *******"<<endl; cout<<" ***** 2.按项目编号查询 *******"<<endl; cout<<" ***** 3.退出返回主菜单 *******"<<endl; cout<<" ***** 4.直接退出本系统 *******"<<endl; cout<<" *************************************************"<<endl; } void Inquiry(int n,int m,int w) //信息查询模块 { int number,i,j,k,y; while(1) { Head(); BMenu(); cout<<" 请选择查询方式:"; cin>>number; switch(number) { case 1: //按学校编号查询 system("cls"); Head(); cout<<" 要查询的学校编号:"; cin>>i; if(i>n) //学校编号超出范围,输出提示信息 cout<<" 这个学校没有参加此次运动会!"<<endl; else { cout<<" 要查询的项目编号:"; cin>>j; if(j>m+w || j==0) //项目编号超出范围,输出提示信息 cout<<" 此次运动会没有这个项目!"<<endl; else //输出要查询学校项目的成绩 { cout<<" 这个项目取前"<<s[0].a[j-1].top<<"名,该学校的成绩如下:"<<endl; for(k=0;k<5;k++) { if(s[i-1].a[j-1].range[k]!=0) cout<<" 名次:"<<s[i-1].a[j-1].range[k]; if(s[i-1].a[j-1].mark[k]!=0) cout<<" 分数:"<<s[i-1].a[j-1].mark[k]<<endl; } } } system("pause"); system("cls"); break; case 2: //按项目编号查询 system("cls"); Head(); cout<<" 要查询的项目编号:"; cin>>y; if(y>m+w || y==0) //项目编号超出范围,输出提示信息 cout<<" 此次运动会没有这个项目!"<<endl; else //输出该项目取得名次的学校的成绩 { cout<<" 该项目取前"<<s[0].a[y-1].top<<"名,取得该名次的学校:"<<endl; for(i=0;j<n;i++) for(j=0;j<5;j++) { if(s[i].a[y-1].range[j]!=0) cout<<" 学校名称:"<<s[i].schname<<" 学校编号:"<<s[i].schnum<<" 名次:"<<s[i].a[y-1].range[j]; if(s[i].a[y-1].mark[j]!=0) cout<<" 分数:"<<s[i].a[y-1].mark[j]<<endl; } } system("pause"); system("cls"); break; case 3: //退出返回主菜单 system("cls"); Menu(); break; case 4: //退出系统 exit(0); default: cout<<" 对不起,无此功能,请输入正确的功能序号!"<<endl; system("pause"); system("cls"); Inquiry(n,m,w); break; } } } void About() //“关于”界面 { cout<<" 啦啦啦"<<endl; } void fsave() //保存信息,即将信息写入文件里 { FILE *fp; if((fp=fopen("sport.txt","w"))==NULL) //以写方式打开文本文件 //并判定能否正常打开 { cout<<" 文件打不开!"<<endl; //不能正常打开文件的处理 exit(0); //调用函数exit终止程序运行 } fwrite(s, sizeof(Schnode), N, fp); //调用文件数据块写函数将信息写进文件里 fclose (fp); //关闭文件 } void Read() //调用信息模块 { FILE *fp; int i,j,m; if((fp=fopen("sport.txt","r"))==NULL) //以读方式打开文本文件 //并判定能否正常打开 { cout<<" 文件打不开!"<<endl; //不能正常打开文件的处理 exit(0); //调用函数exit终止程序运行 } fread(s, sizeof(Schnode), N, fp); //调用文件数据块读函数将信息从文件里读出 for(i=0;i<N;i++) //将读出的信息输出 { cout<<" 学校名称:"<<s[i].schname<<endl; cout<<" 学校编号:"<<s[i].schnum<<endl; for(j=0;j<M+W;j++) { cout<<" 项目名称:"<<s[i].a[j].proname<<endl; cout<<" 项目编号:"<<s[i].a[j].pronum<<endl; cout<<" 取前3名还是前5名:"<<s[i].a[j].top<<endl; for(m=0;m<5;m++) { fread(&s[i].a[j].range[m],sizeof(int),1,fp); if(s[i].a[j].range[m]!=0) cout<<" 名次:"<<s[i].a[j].range[m]; fread(&s[i].a[j].mark[m],sizeof(int),1,fp); if(s[i].a[j].mark[m]!=0) cout<<" 分数:"<<s[i].a[j].mark[m]<<endl; } cout<<endl; } } fclose(fp); //关闭文件 } void Menu(int n,int m,int w) //主菜单函数 { int number; do { Head(); MainMenu(); cout<<" 请选择:"; cin>>number; switch(number) { case 1: //输入信息 system("cls"); Head(); cout<<" 请输入运动会各学校信息:"<<endl; InfoInput(n,m,w); //信息输入模块 fsave(); //保存信息 system("cls"); break; case 2: //输出信息 system("cls"); InfoOutput(n,m,w); //信息输出模块 break; case 3: //查询信息 system("cls"); Inquiry(n,m,w); //信息查询模块 break; case 4: //调用信息 system("cls"); Head(); Read(); //调用信息模块 system("pause"); system("cls"); break; case 5: //“关于”模块 system("cls"); Head(); About(); //“关于”界面 system("pause"); system("cls"); break; case 6: //退出系统 system("cls"); Head(); cout<<" 谢谢使用!"<<endl; exit(0); default: //其他 cout<<" 对不起,无此功能,请输入正确的功能序号!"<<endl; system("pause"); system("cls"); break; } }while(1); } void main() //主函数 { int n,m,w; cout<<"学校个数:"; cin>>n; cout<<"男子项目个数:"; cin>>m; cout<<"女子项目个数:"; cin>>w; Menu(n,m,w); //主菜单函数 }

C++出现 unexpected end of file found

下面是代码: ``` #define StrNum 20 #define Type 20 #include <iostream> #include <iomanip> #include <string> #include <fstream> //输入输出文件流 using namespace std; const int Maxb=100; //最多可存储的图书 class Book { private: int lab; //删除标记 int num; //图书编号 int add; //增加标记 char number[StrNum]; //编号 char bookname[StrNum]; //书名 char bookkind[Type]; //图书类型 public: Book(){} char getkind() //获取图书类型 { return bookkind[Type]; } char getname() //获取书名 { return bookname[StrNum]; } int getnum() //获取图书编号 { return num; } int getlab() //获取删除标记 { return lab; } void setname(char na[]) //设置书名 { strcpy(bookname,na); } void setkind(char kin[]) //设置类型 { strcpy(bookkind,kin); } void delbook() //删除图书 { lab=1; } void addbook(int n,char *na,char *kin) //增加图书 { lab=0; num=n; strcpy(bookname,na); strcpy(bookkind,kin); } void disp() //输出图书 { cout.flags (ios::left); //设置对齐的标志位为左 cout<<setw(15)<<num<<setw(20)<<bookname<<setw(15)<<bookkind<<endl; } }; class BDatabase { private: int top; Book book[Maxb]; //图书记录 public: BDatabase() //构造函数,将book.txt读到book[]中 { Book b; top=-1; fstream file("book.txt",ios::in); while (1) { file.read((char *)&b,sizeof(b)); if (!file) break; top++; book[top]=b; } file.close(); } void clear() //全删 { top=-1; } int addbook(int n,char *na,char *kin) //增加图书 { Book *p=query(n); if(NULL==p) { top++; book[top].addbook(n,na,kin); return 1; } return 0; } Book *query(int bookid) //查找图书 { for(int i=0;i<=top;i++) if(book[i].getnum()==bookid&&book[i].getlab()==0) { return &book[i]; } return NULL; } void disp() //图书库 { for(int i=0;i<=top;i++) if (book[i].getlab()==0) book[i].disp(); } ~BDatabase() //析构函数,将book[]写到book.txt中,实现文本的写入 { fastream file("book.txt",ios::out); for(int i=0;i<=top;i++) if(book[i].getlab()==0) file.write((char*)&book[i],sizeof(book[i])); file.close(); } void main() { BDatabase BookDB; char choice; char bname[40]; char bkind[40]; char newType[20]; int bookid; Book *b; while (choice!='0') { cout<<"\t******************************************************************\n"; cout<<" \n\n"; cout<<"\t\t\t图 书 管 理 系 统\n\n"; cout<<"\t\t\t1 新增图书记录\n"; cout<<"\t\t\t2 更改图书记录\n"; cout<<"\t\t\t3 删除图书记录\n"; cout<<"\t\t\t4 查找图书记录\n"; cout<<"\t\t\t5 显示图书记录\n"; cout<<"\t\t\t6 清空全部记录(慎用)\n"; cout<<"\t\t\t0 退出系统\n"; cout<<" \n\n"; cout<<"\t******************************************************************\n"; cout<<"请选择(1,2,3,4,5,6,0):"; cin>>choice; switch (choice) { case'1': cout<<"输入图书编号:"<<endl; cin>>bookid; cout<<"输入图书类型:"<<endl; cin>>newType; cout<<"输入图书书名:"<<endl; cin>>bname; BookDB.addbook(bookid,bname,newType); break; case'2': cout<<"输入图书编号:"<<endl; cin>>bookid; b=BookDB.query(bookid); if(b==NULL) { cout<<"该图书不存在"<<endl; break; } cout<<"输入新的书名:"<<endl; cin>>bname; b->setname(bname); cout<<"输入新的类型:"<<endl; cin>>bkind; b->setkind(bkind); break; case'3': cout<<"读入图书编号:"<<endl; cin>>bookid; b=BookDB.query(bookid); if(b==NULL) { cout<<"该图书不存在"<<endl; break; } char tg1; cout<<"确定要删除此记录吗?(Y/N)"<<endl; cin>>tg1; if(tg1!='n'&&tg1!='N') { b->delbook(); cout<<"已成功删除该书记录!"<<endl; break; } case '4': cout<<"读入图书编号:"<<endl; cin>>bookid; b=BookDB.query(bookid); if(b==NULL) { cout<<"该图书不存在"<<endl; break; } cout<<"图书编号 图书名称 图书类型 \n"; b->disp(); break; case '5': cout<<"图书编号 图书名称 图书类型 \n"; b->disp(); break; case '6': char tg2; cout<<"确定要清空所有记录吗?(Y/N)"<<endl; cin>>tg2; if(tg2!='n'&&tg2!='N') { BookDB.clear(); cout<<"已成功清空记录!"<<endl; break; } case '0': break; default:cout<<"输入错误,请从新输入(数字为0~6):"; } } } ```

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

抖音上很火的时钟效果

反正,我的抖音没人看,别人都有几十万个赞什么的。 发到CSDN上来,大家交流下~ 主要用到原生态的 JS+CSS3。 具体不解释了,看注释: &lt;!DOCTYPE html&gt; &lt;html lang="en"&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Title&lt;/tit...

记录下入职中软一个月(外包华为)

我在年前从上一家公司离职,没想到过年期间疫情爆发,我也被困在家里,在家呆着的日子让人很焦躁,于是我疯狂的投简历,看面试题,希望可以进大公司去看看。 我也有幸面试了我觉得还挺大的公司的(虽然不是bat之类的大厂,但是作为一名二本计算机专业刚毕业的大学生bat那些大厂我连投简历的勇气都没有),最后选择了中软,我知道这是一家外包公司,待遇各方面甚至不如我的上一家公司,但是对我而言这可是外包华为,能...

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

推荐9个能让你看一天的网站

分享的这9个保证另你意外的网站,每个都非常实用!非常干货!毫不客气的说,这些网站最少值10万块钱。 利用好这些网站,会让你各方面的技能都得到成长,不说让你走上人生巅峰,但对比现在的你,在眼界、学识、技能方面都有质的飞跃。 一、AIRPANO 传送门:https://www.airpano.com/360photo_list.php 这是一个可以躺在家里,就能环游世界的神奇网站。 世界那么大,绝大多...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!

文章目录前言正文**1、Kaspersky Cyberthreat real-time map****2、Finding Home****3、Silk – Interactive Generative Art****4、Liquid Particles 3D****5、WINDOWS93****6、Staggering Beauty****7、Ostagram图片生成器网址****8、全历史网址*...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

一场疫情,炸出了退休的COBOL程序员

COBOL编程语言,估计大多数程序员从没听说过,我这样的编程老司机,也是只闻其名,从未一睹芳容。出门问了问度娘,答案如下:COBOL语言,是一种面向过程的高级程序设计语言,主要用于数据...

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

讲真,这两款idea插件,能治愈你英语不好的病

时不时就有小伙伴问我,“二哥,能推荐一款 IDE 吗?”你看这话问的,现在搞 Java 的不都在用 Intellij IDEA 吗,还用得着推荐(我已经和 Eclipse 分手了)。然后小伙伴又说,“二哥,IDEA 支持中文吗?我英语不太好。”你看这话问的,搞编程的,英语不好是硬伤啊! 不过,随着 IDEA 最新版(版本号是 2020.1)的发布,英语不好的病可以彻底治愈了。为什么这么说呢?因为 ...

在拼多多上班,是一种什么样的体验?我心态崩了呀!

之前有很多读者咨询我:武哥,在拼多多上班是一种什么样的体验?由于一直很忙,没抽出时间来和大家分享。上周末特地花点时间来写了一篇文章,跟大家分享一下拼多多的日常。 1. 倒时差的作息 可能很多小伙伴都听说了,拼多多加班很严重。这怎么说呢?作息上确实和其他公司有点区别,大家知道 996,那么自然也就能理解拼多多的“11 11 6”了。 所以当很多小伙伴早上出门时,他们是这样的: 我们是这样的: 当...

又一起程序员被抓事件

就在昨天互联网又发生一起让人心酸的程序员犯罪事件,著名的百度不限速下载软件 Pandownload PC 版作者被警方抓获。案件大致是这样的:软件的作者不仅非法盗取用户数据,还在QQ群进...

瑞德西韦重症用药结果再曝光,上百名重症一周内好转,股价大涨19%

郭一璞 发自 凹非寺量子位 报道 | 公众号 QbitAI期盼已久的瑞德西韦临床数据,现在“偷跑”了。在芝加哥大学医学院的临床试验中,125名病人参与,大部分人都已经出院,其中只有2名病...

应聘3万的职位,有必要这么刁难我么。。。沙雕。。。

又一次被面试官带到坑里面了。面试官:springmvc用过么?我:用过啊,经常用呢面试官:springmvc中为什么需要用父子容器?我:嗯。。。没听明白你说的什么。面试官:就是contr...

Vue商城——详情页功能

详情页实现思路 点击商品进去详情页,根据点击请求更加详细的信息,要传过来goodsItem的iid,根据id去服务器请求更加详细的信息;配置路由映射关系,点击进行跳转,带参数传递跳转 itemClick(){ this.$router.push('/detail/'+this.goodsItem.iid) /* this.$router.push({ ...

太狠了,疫情期间面试,一个问题砍了我5000!

疫情期间找工作确实有点难度,想拿到满意的薪资,确实要点实力啊!面试官:Spring中的@Value用过么,介绍一下我:@Value可以标注在字段上面,可以将外部配置文件中的数据,比如可以...

自学编程的 6 个致命误区

嗨,小伙伴们大家好,我是沉默王二。本篇文章来和大家聊聊自学编程中的一些误区——这是我在 B 站上看了羊哥的一期视频后有感而发的文章。因为确实有很多读者也曾私信问过我这些方面的问题,很有代表性,所以我就结合自己的亲身体会来谈一谈,希望对小伙伴们有所启发。 01、追求时髦 所谓基础不牢,地动山摇啊。可很多小伙伴压根就没注意过这个问题,市面上出什么新鲜的技术就想去尝试,结果把自己学的乱七八糟,心灰意冷...

你离黑客的距离,就差这20个神器了

郑重声明:本文仅限技术交流,不得用于从事非法活动 在不少电影电视剧中,主角的身边都有这么一位电脑高手:他们分分钟可以黑进反派的网络,攻破安全防线,破解口令密码,拿到重要文件。他们的电脑屏幕上都是一些看不懂的图形和数字,你能看懂的就只有那个进度条,伴随着紧张的BGM,慢慢的向100%靠近······ 上面的场景和套路是不是很眼熟? 影视作品中的黑客当然有夸张和戏剧化的表现,不过,现实世界中的黑客也...

Linux基础:xargs命令-I选项使用技巧

这篇文章使用具体示例来介绍一下xargs命令-I参数的常见使用方法。

相关热词 c#跨线程停止timer c#批量写入sql数据库 c# 自动安装浏览器 c#语言基础考试题 c# 偏移量打印是什么 c# 绘制曲线图 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行
立即提问