📄 readwrite.cpp
字号:
// ReadWrite.cpp: implementation of the CReadWrite class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "Ygpc.h"
#include "mainfrm.h"
#include "ygpcdoc.h"
#include "ReadWrite.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CReadWrite::CReadWrite()
{
}
CReadWrite::~CReadWrite()
{
}
BOOL CReadWrite::Read()
{
m_pInDataHead.ControlNum=(int)malloc(sizeof(int));
CFileDialog m_Open(true,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"(*.txt)|*.txt",NULL);
m_Open.DoModal();
CYgpcDoc *pDoc=(CYgpcDoc*)((CMainFrame*)AfxGetApp()->m_pMainWnd)->GetActiveDocument();
pDoc->m_docpath=m_Open.GetPathName();
m_path=m_Open.GetPathName();
CStdioFile file;
char buff[256],strBuff[256];
char head1buff[256];
char head2buff[256];
if(!file.Open(m_path,CFile::modeRead|CFile::typeText,NULL)){
AfxGetApp()->m_pMainWnd->MessageBox("数据文件不存在或数据文件出错!","提示",
MB_OK|MB_ICONWARNING);
return FALSE;
}
file.ReadString(buff,128);
sscanf(buff,"%s",strBuff);
if(strcmpi(strBuff,"ControlNum"))
{
AfxGetApp()->m_pMainWnd->MessageBox("非本系统数据文件!","提示",
MB_OK|MB_ICONWARNING);
file.Close();
return FALSE;
}
file.ReadString(buff,4);
sscanf(buff,"%d",&m_pInDataHead.ControlNum);
CMainFrame *pMain=(CMainFrame *)AfxGetApp()->m_pMainWnd;
pMain->m_ControlNum=m_pInDataHead.ControlNum;
// m_pInDataHead.ControlNum
// M_InData m_b[m_pInDataHead.ControlNum];
m_pInData=(struct m_InData *)malloc(sizeof(m_InData)*m_pInDataHead.ControlNum);
file.ReadString(buff,128);
sscanf(buff,"%lf",&m_pInDataHead.f);
file.ReadString(head1buff,128);
file.ReadString(buff,255);
sscanf(buff,"%lf %lf %lf %lf %lf %lf",&m_pInDataHead.Xs,
&m_pInDataHead.Ys,&m_pInDataHead.Zs,&m_pInDataHead.q,
&m_pInDataHead.w,&m_pInDataHead.k);
file.ReadString(head2buff,128);
for(int i=0;i<m_pInDataHead.ControlNum;i++){
file.ReadString(buff,128);
sscanf(buff,"%lf %lf %lf %lf %lf",&m_pInData[i].x,
&m_pInData[i].y,&m_pInData[i].Xp,&m_pInData[i].Yp,
&m_pInData[i].Zp);
}
file.Close();
return (TRUE);
}
void CReadWrite::Read1()
{
CStdioFile file;
char buff[256];
char head1buff[256];
char head2buff[256];
CYgpcDoc *pDoc=(CYgpcDoc*)((CMainFrame*)AfxGetApp()->m_pMainWnd)->GetActiveDocument();
file.Open(pDoc->m_docpath,CFile::modeRead|CFile::typeText,NULL);
file.ReadString(buff,128);
file.ReadString(buff,4);
sscanf(buff,"%d",&m_pInDataHead.ControlNum);
m_pInData=(struct m_InData *)malloc(sizeof(m_InData)*m_pInDataHead.ControlNum);
file.ReadString(buff,128);
sscanf(buff,"%lf",&m_pInDataHead.f);
file.ReadString(head1buff,128);
file.ReadString(buff,255);
sscanf(buff,"%lf %lf %lf %lf %lf %lf",&m_pInDataHead.Xs,
&m_pInDataHead.Ys,&m_pInDataHead.Zs,&m_pInDataHead.q,
&m_pInDataHead.w,&m_pInDataHead.k);
file.ReadString(head2buff,128);
for(int i=0;i<m_pInDataHead.ControlNum;i++){
file.ReadString(buff,128);
sscanf(buff,"%lf %lf %lf %lf %lf",&m_pInData[i].x,
&m_pInData[i].y,&m_pInData[i].Xp,&m_pInData[i].Yp,
&m_pInData[i].Zp);
}
file.ReadString(buff,128);
file.ReadString(buff,128);
sscanf(buff,"%d",&dwdNum);
pDoc->dwdNumb=dwdNum;
m_pDmzb=(struct m_DMZB *)malloc(sizeof(m_DMZB)*dwdNum);
file.ReadString(buff,255);
file.ReadString(buff,255);
for(i=0;i<dwdNum;i++)
{file.ReadString(buff,128);
sscanf(buff,"%lf %lf %lf",&m_pDmzb[i].Xp,&m_pDmzb[i].Yp,&m_pDmzb[i].Zp);
}
file.Close();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -