问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

用MFC做个带界面的查询功能,输入地名,然后读取txt中地名信息,再输出信 ...

发布网友 发布时间:2024-10-10 17:15

我来回答

1个回答

热心网友 时间:2024-10-10 17:27

可以做一个基于对话框的项目,对话框上有多个按钮,用来导入txt文件的内容;还有命令按钮,进行查找;还有编辑框,用来显示查找结果。
主要代码:
void CAddressDlg::Search()
{
GetDlgItem(IDC_EDIT_ADDRESS)->GetWindowText(m_address);

//转化文件路径的字符串类型:将UNICODE转化为多字节字符串
int filePathStringLength = 2*m_filePath.GetLength();
char * filePathMultiByte = new char[filePathStringLength];
memset(filePathMultiByte, 0, filePathStringLength);
::WideCharToMultiByte(CP_ACP, 0, m_filePath, filePathStringLength,
filePathMultiByte, filePathStringLength, NULL, NULL);

//转化待查找字符的字符串类型:将UNICODE转化为多字节字符串
int addressStringLength = 2*m_address.GetLength();
char * addresshMultiByte = new char[addressStringLength];
memset(addresshMultiByte, 0, addressStringLength);
::WideCharToMultiByte(CP_ACP, 0, m_address, addressStringLength,
addresshMultiByte, addressStringLength, NULL, NULL);

if(_T("") == m_address){
AfxMessageBox(L"还未输入要查找的地名!");
return;
}

FILE * pf = fopen(filePathMultiByte, "r");
if(pf == NULL){
AfxMessageBox(L"打开文件失败!");
return;
}

int addressLength = m_address.GetLength()*2;
int lineNum = 0;
char lineBuffer[MAX_LINE_WIDTH];
char * address = new char[addressLength];
memcpy(address, addresshMultiByte, addressLength);

while(!feof(pf)){
fscanf(pf, "%s\n", lineBuffer);
int lineLength = strlen(lineBuffer);
int searchNum = lineLength - addressLength;
for(int i=0;i<searchNum;i++){
char * str = new char[addressLength];
memset(str, 0, addressLength);
memcpy(str, lineBuffer+i, addressLength);
if(!strcmp(str, address)){
CString strRes;
strRes.Format(L"找到啦!在第%d行,第%d列", lineNum+1, i+1);
AfxMessageBox(strRes);
delete [] str;
str = NULL;

goto finish;
}

delete [] str;
str = NULL;
}
lineNum++;
}

finish:
fclose(pf);

delete [] filePathMultiByte;
filePathMultiByte = NULL;
delete [] addresshMultiByte;
addresshMultiByte = NULL;
delete [] address;
address = NULL;
}
若想要整个工程,可以再联系我
用MFC做个带界面的查询功能,输入地名,然后读取txt中地名信息,再输出信 ...

可以做一个基于对话框的项目,对话框上有多个按钮,用来导入txt文件的内容;还有命令按钮,进行查找;还有编辑框,用来显示查找结果。主要代码:void CAddressDlg::Search(){ GetDlgItem(IDC_EDIT_ADDRESS)-&gt;GetWindowText(m_address);//转化文件路径的字符串类型:将UNICODE转化为多字节字符串 int filePath...

mfc 怎么完成对txt文件的读取和写入

界面一个文本框两个按钮,文本框关联一个CString型变量m_Data,设置属性为Vertical scroll和Want return。两个按钮对应的读写函数分别如下 void CFileTxtDlg::OnRead(){ // TODO: Add your control notification handler code here CFileDialog fDlg(TRUE);fDlg.m_ofn.lpstrFilter = "Text Files(*....

用c++的MFC编一个用户资料搜集的界面

用类成员向导你把那个提交按钮关联一个类成员函数 然后先把信息存入一个结构里面 然后打开文件 写入就行了 1.如果是手动保存在D盘 可以用CFileDialog类的DoModal函数弹出保存为的对话框 2.如自动保存在D盘a.txt下 就用 CFile类write函数写入文件 close函数关闭即可 给出 方法 ,自己能琢磨出代码比直接...

程序设计中的指令是什么?有哪几种?

特别是PowerBuilder能从大多数流行的RDBMS中存取数据,且不管数据存放在什麽地方;另外,各种应用程序又可以独立于RDBMS,因为PowerBuilder可以使用数据库的标准操作语言SQL(结构化查询语言)进行。 使用PowerBuilder,可以很容易地开发出功能强大的图形界面的访问服务器数据库的应用程序,PowerBuilder提供了建立符合工业标准的应用...

mfc从txt中读取文件到listctrl中,可以保存修改内容

炫彩界面库来回答:用这个函数打开文件 FILE *fopen( const char *filename, const char *mode );然后读取文件内容 size_t fread(void *buffer,size_t size,size_t count,FILE *stream );然后分析内容添加到listctrl 中, 更简单的方法可以加我们的群学习;记得关闭文件.

如何在MFC中让一个按钮实现打开文件(弹出选择文件窗口)的功能?

1、打开软件。2、新建工程,名字“canshuchuandi”。制作界面如图。编辑框变量设置为“m_a1”。3、在资源视图,右键插入类“Cshow”制作界面,变量设置为“m_a2”。4、双击原界面的“打开并传输”按钮,编辑事件处理程序如图。5、双击新建的界面的“返回第一个对话框+6”按钮,编辑事件处理程序如图。...

MFC C++ 学生管理系统

4.你的(3)封装成一个函数可以用来查找信息,但是有缺陷的是查找效率很低,而且姓名有重复。对话框实现:MFC建立一个基于对话框的工程;给你的对话框添加功能按钮;一个个按钮添加消息映射,以便点击按钮会调用相应的对话框;在资源中做几个跟你按钮配对的对话框,做好其界面,并添加你点击按钮后想要...

c语言编写学生信息管理系统

学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:系统以菜单方式工作学生信息录入功能(学生信息用文件保存)---输入学生信息浏览功能---输出查询、排序功能---算法按学号查询按姓名查询学生信息的删除与修改(可选项)要使用到链表和文件保存,尽量简单点...

千千静听

你可先用Word或文本文档两格式编好歌词 再打开千千静听在歌词绣屏幕上右击关联上你所编写的歌词 下面就是在歌词绣屏幕上出现一个编辑形式,其中有个"+"标志,是插入时间标签的工具,然后就是播放此音乐时插入每句的时间标签(时间标签就是播放音乐时歌词绣屏幕里歌词出现的时间),但要听完这首歌才能完全...

千千静听怎么用啊 高手来

可以,千千静听已经支持unicode,可以在非简体中文的Windows 2000/XP下使用,千千静听的界面不会出现乱码,但某些只包含ID3v1标签的MP3文件可能是显示乱码,可以尝试用“文件信息”里的内码转换功能来找到正确的内码。千千静听还提供了繁体和简体之间的标签和歌词转换。问:安装新版本的时候,需要先删除以前的...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
七夕节的爱情话有哪些呢? 求9年级有难度的各科资料名称~~!! 托收承付用什么分录 ...需施加复合肥.下列物质属于复合肥的是( )A.K2S ...绿.下列物质中能用作氮肥的是( )A.NH4NO3B.K2SO4C.Ca(H2PO4)2D... ...告诉他需要施氮肥,他应该施用的肥料是( )A.K2SO4B.Ca3( 电子合同怎么签,麻烦吗,安全吗,有哪些注意事项? 怎样安全签订电子合同 签电子合同要注意什么事项? 冒险岛哪些职业 香奈儿包从法国寄到重庆海关一般怎么查呢?大概会收税多少呢?急!_百度... 吃红薯是长肉还是减肥 杨梅能放多长时间 杨梅能放多久 杨梅能保存多少时间 红薯增肥吗 ?烤的那种. .. . 我和我前男朋友分手了,我该送他什么生 分手后,在他过生日的时候,我给他送什么礼物合适呢? ...把礼物给他,在分手,但我先分了,礼物还要不要送了? 乳房感觉疼是怎么回事 乳康宁组合成分介绍 乳康宁组合产品特色 乳康宁组合基本信息 请帮忙解决这七道题。注意前面六道题各有解决它们的方法。请用这些方法... 求值域,共六道题,能搞定一道算一道。求学霸帮忙啊。 六道题!!急死啦!!!帮帮忙吧!!!亲爱的们!!!爱死你们啦!!谢谢谢谢谢谢... 帮帮忙吧这六道题不会啊 六道题帮忙算一下,告诉一下 ...色的高大的花海,花海附近有水塘,岸上有缺水的小鱼。在捡小鱼准备丢... 怎么注销掉原始户口 手报报警是什么原因 请问如果我想学会MFC,用它来做界面之类的,但是我只学过c和少量的c++... 魔戒3部中精灵王子哪部戏份最多 ...中指和小指这三个经常会出现这些现象 是什么原因 我老公今年51岁,最近两月发现右手无名指和小指发木、无力,做脑CT正常... ...旁放个杯子或者类似的东西,甚至用手扩一个弧形就能听到呼呼的... 近义词辨析—start和begin在用法上面的区别 教你自制五彩水晶泥 手感超棒 2014冬季流行女裤有哪些色体 女装真的很好卖吗! 百斯盾女裤冬款男士能穿吗 次详细字义 建筑物哪些情况应设置沉降缝 重型再障怎么办 纯红再生障碍性贫血症状体征 ...根本拿不出手 怎么好练 什么时间 用多长时间 用什么用具 什么笔比 ... 《红岩》中的小萝卜头给你留下了怎一样的印象?请以"我与小萝卜头比童 ... 我和''小萝卜头"比童年作文200作文 磨杵成针中,杵的音节是 DV如何聚焦的问题? ...低音喇叭声音很没有层次感,有呜呜声一样会是什么
  • 焦点

最新推荐

猜你喜欢

热门推荐