永发信息网

vc 如何逐行读取文本

答案:6  悬赏:10  手机版
解决时间 2021-03-19 11:43
我在一个DLL文件(WIN32静态那个)里想逐行读取c:\1.txt里的内容
因为我要逐行比较字符串

while(.....)
{
If(!strcmp(这一行的内容,"123"))MessageBox(NULL,"这一行是123了",NULL,NULL);
}

貌似用for会好点。。。。

请教了,写出代码给我看看,好吗? 谢谢了
最佳答案
CStdioFile cFile;
CString strTemp;//只保存当前行数据
std::vector strVector;//用于保存每行读取出来的内容
if(!cFile.Open("test.txt", CFile::modeRead))
{
cout<<"打开文件失败"< }
while(cFile.ReadString(strTemp))
{
strVector.push_back(strTemp);

}
运行完成,strVector中就保存了test.txt中的所有内容。
全部回答
有专用函数char *fgets(char *string,int n,FILE *stream) 是从流stream中读前n个字符存入string中。 还有一个fgetline函数,貌似只用过一次,具体记不清了
CStdioFile File;// 定义一个CStdioFile类变量File CString FileData;// 定义一个CString,作为一个缓冲区 ret=File.Open(m_FilePath,CFile::modeRead); //以读模式打开文本文件 while(File.ReadString(FileData))// 将一行数据读到缓冲区 { //在这里面处理FileData就可以了 }
C语言的话把整个文件读入一个char数组,然后用sscanf或者strstr处理 C++语言用ifstream的getline方法读取一列 当然,在VC++里边两种都可以用... 还有一个要注意的问题是要把wide char的库函数,否则中文无法直接比较...
你好! C语言的话把整个文件读入一个char数组,然后用sscanf或者strstr处理 C++语言用ifstream的getline方法读取一列 当然,在VC++里边两种都可以用... 还有一个要注意的问题是要把wide char的库函数,否则中文无法直接比较... 我的回答你还满意吗~~
char str[100]; FILE* file; file = fopen("C:\\1.txt", "r"); while (fscanf(file, "%s", str) != EOF) { ...... }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
卖童装是不是比女装好做阿。我想摆地摊卖童装
什么样的人容易想多了?
手机关机骚扰拦截功能无法开启
口腔医学一定要到师资好的学校读吗?赤峰学院
owwo 7s和小米4哪个好用
车家春生村地址有知道的么?有点事想过去
浪子回头的男人都是怎么求得自己老婆原谅的?
冰冻馄饨怎样煮熟
因为不退让而两败俱伤的现代例子
月加詹是什么字
五行八字起名测名打分
唯品会买了东西怎么退货,还没有发货,只是审
小公司进货没发票能做账吗
哪个软件能测出脸型最 适合的发型
我家的燃气灶好好的,换了瓶液化气,就打不着
推荐资讯
询小学英语单词500个。
工伤左手食指末端骨折中指无名指末端缺失,大
高阳平安驾校报名处怎么去啊,有知道地址的么
一二两车间人数相差45人,一车间人数的七分之
滨州医学院烟台校区-图书馆在哪里啊,我有事
有3个4.6.7,任意取其中2个求和,得数有几种可
求伊东绘理全集种子
荣真斋我想知道这个在什么地方
奸门很多皱纹的人是不是很花心
用“如果”“那么”造句子
农民自产猪饲料做法
奶盖怎么做
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?