测绘程序设计(vs2008)实验报告--文件操作

测绘程序设计(vs2008)实验报告--文件操作

ID:12316436

大小:121.83 KB

页数:35页

时间:2018-07-16

测绘程序设计(vs2008)实验报告--文件操作_第1页
测绘程序设计(vs2008)实验报告--文件操作_第2页
测绘程序设计(vs2008)实验报告--文件操作_第3页
测绘程序设计(vs2008)实验报告--文件操作_第4页
测绘程序设计(vs2008)实验报告--文件操作_第5页
资源描述:

《测绘程序设计(vs2008)实验报告--文件操作》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《测绘程序设计(VC.net)》上机实验报告(VisualC++.Net)实验5文件班级:学号:姓名:序号:二零一零年四月实验5文件一、实验目的·掌握文件对话框的使用方法。·掌握C++文件操作的一般步骤及实现方法。·了解MFC文件操作的特点及使用方法。二、实验内容1.编制简单的Cass数据文件进行数据整理的程序。整理后的数据文件中要求无重复点数据,且数据按点号大小的升序进行排序。要求整理后的数据按与原始数据文件同样的格式保存为另外一个文件要求:a.用SaveFileDialog和OpenFileDialog控件获取文件打开或保存的文件名。b.自定义一个测量

2、点数据结构体,其元素包括:点号,编码,X,Y,Hc.用文本框显示原始数据和整理后的数据d..按编程规范进行编码设计思路:1)自定义一个测量点数据结构体,其元素包括:点号,编码,X,Y,H2)定义一个分割函数用来分割数据3)打开文件,将测量点的数据值赋给点的结构体数组4)通过比较结构体元素的异同删除重复点,获得新的总点数5)按点号大小的升序排列6)将新排好的数据输出到另一个文本框中,并保存于文件中。界面设计:共2个文本框、2个GroupBox控件、2个命令按钮。IDMultilineWantReturn添加变量名IDC_EDITPriDataTrueTrue

3、strPriDataIDC_EDITTidyDataTrueTruestrTidyData具体见运行程序。主要代码:FileDlg.cpp//定义点的结构体#definePOINTstructpointPOINT{intiDotmark;CStringstrCode;doubleX;doubleY;doubleZ;};voidCFileDlg::OnBnClickedOpenfile(){//TODO:在此添加控件通知处理程序代码CFileDialogdlgFile(TRUE,_T("txt"),NULL,OFN_ALLOWMULTISELECT

4、OFN_

5、EXPLORER,_T("(文本文件)

6、*.txt"));if(dlgFile.DoModal()==IDCANCEL)return;CStringstrFileName=dlgFile.GetPathName();setlocale(LC_ALL,"");CStdioFilesf;if(!sf.Open(strFileName,CFile::modeRead))return;CStringstrLine;strPriData.Empty();BOOLbEOF=sf.ReadString(strLine);while(bEOF){strPriData+=s

7、trLine;bEOF=sf.ReadString(strLine);if(bEOF)strPriData+=_T("r");}sf.Close();//整理原始数据并在右边编辑框中输出//UpdateData(TRUE);intiLine;//分行并存入字符串数组CString*pstrLine=SplitString(strPriData,'',iLine);intiTotalPoint;//总点数CString*strTmp=NULL;intn;iTotalPoint=_ttoi(pstrLine[0]);//第一行为总点数if(iTota

8、lPoint!=iLine-1)MessageBox(_T("数据格式有误"));POINT*pPoint=newPOINT[iTotalPoint];//结构体指针,指向点结构体//逐行用Split函数分离,给点结构体赋值for(inti=0;i

9、t[i].Y=_tstof(strTmp[3]);pPoint[i].Z=_tstof(strTmp[4]);if(strTmp!=NULL)//释放内存{delete[]strTmp;strTmp=NULL;}}if(strTmp!=NULL)//释放内存{delete[]strTmp;strTmp=NULL;}//删除重复点for(inti=0;i

10、int;for(intk=j;k

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。