⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 booksizedlg.cpp

📁 小型图书管理系统
💻 CPP
字号:
// BookSizeDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Library_5.h"
#include "BookSizeDlg.h"

#include "ManagerLandDlg.h"
#include "BookRS.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CBookSizeDlg dialog


CBookSizeDlg::CBookSizeDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CBookSizeDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CBookSizeDlg)
	//}}AFX_DATA_INIT
}


void CBookSizeDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CBookSizeDlg)
	DDX_Control(pDX, IDC_LIST_PATH, m_strFilePath);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CBookSizeDlg, CDialog)
	//{{AFX_MSG_MAP(CBookSizeDlg)
	ON_BN_CLICKED(IDC_OPEN, OnOpen)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CBookSizeDlg message handlers

void CBookSizeDlg::OnOK() 
{
	CLibrary_5App *App = (CLibrary_5App *)AfxGetApp();
	CString managerNum=App->managerID;

	if(managerNum=="无管理员登录")
	{
		AfxMessageBox("无管理员登录,请先登录");
		CManagerLandDlg managerLandDlg;
		managerLandDlg.DoModal();
		if((managerNum=App->managerID)=="无管理员登录")
			return;
	}

	UpdateData();

	if(!m_bookSet.IsOpen())
	{
		m_bookSet.Open();
	}
	
	CFile mFile;
	if(mFile.Open(filePath,CFile::modeRead)==0)
	{
		AfxMessageBox("不能打开文件!");
		return;
	};
	long length=mFile.GetLength();long count=1;
	char c;
	CString keyWord[8];
	int i=0;

	CArchive ar(&mFile,CArchive::load); 
	ar>>c;
	while(count<length)
	{
		if(c=='\n')
		{
			ar>>c;
			count++;
			continue;
		}
		keyWord[i].Empty();
		while((c!=',')&&(c!='\n')&&(count<length))
		{
			keyWord[i]+=c;
			ar>>c;count++;
		}
		if(count<length)
		{
			ar>>c;
			count++;
		}
		i++;

		if(i==8)
		{
			m_bookSet.m_strFilter.Format(" bno = '%s' ",keyWord[0]);

			m_bookSet.Requery();

			if(!m_bookSet.IsEOF())
			{
				m_bookSet.Edit();
				m_bookSet.m_total_num=m_bookSet.m_total_num+atoi(keyWord[7].GetBuffer(keyWord[7].GetLength()));
				m_bookSet.m_stocked_num=m_bookSet.m_stocked_num+atoi(keyWord[7].GetBuffer(keyWord[7].GetLength()));
				m_bookSet.Update();
			}
			else
			{
				m_bookSet.AddNew();
				m_bookSet.m_bno=keyWord[0];
				m_bookSet.m_subject=keyWord[1];
				m_bookSet.m_title=keyWord[2];
				m_bookSet.m_press=keyWord[3];
				m_bookSet.m_pub_date=atoi(keyWord[4].GetBuffer(keyWord[4].GetLength()));
				m_bookSet.m_authors=keyWord[5];
				m_bookSet.m_price=atof(keyWord[6].GetBuffer(keyWord[6].GetLength()));
				m_bookSet.m_total_num=atoi(keyWord[7].GetBuffer(keyWord[7].GetLength()));
				m_bookSet.m_stocked_num=atoi(keyWord[7].GetBuffer(keyWord[7].GetLength()));
				m_bookSet.Update();
			}
			i=0;
		}
	}
	ar.Close();
	mFile.Close();

	AfxMessageBox("批量入库成功!");



	// TODO: Add extra validation here
	
	CDialog::OnOK();
}

void CBookSizeDlg::OnOpen() 
{
	CFileDialog dlg(TRUE);
	if(dlg.DoModal()==IDOK)
	{
		m_strFilePath.ResetContent();
		filePath=dlg.GetPathName();
		m_strFilePath.AddString(dlg.GetFileName());
	}

	// TODO: Add your control notification handler code here
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -