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

📄 phonebook.h

📁 通过手机数据线连接手机
💻 H
字号:
// PhoneBook.h: interface for the CPhoneBook class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_PHONEBOOK_H__1725A7A1_A826_4CA3_BE84_E6E9F4949057__INCLUDED_)
#define AFX_PHONEBOOK_H__1725A7A1_A826_4CA3_BE84_E6E9F4949057__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#define PBM_ME 0//标识手机电话本
#define PBM_SM 1//标识SIM电话本
#define PBM_NONE -1//无标识

#define PBC_CPBS_QUERY 0//查询电话本类型
#define PBC_CPBS_SET 1//设为相应的电话本: AT+CPBS="ME"\r
#define PBC_CPBR_QUERY 2//查询电话本容量
#define PBC_GET_ALL 10//取所有项目的命令: AT+CPBR=1,200\r

class CPhoneBook  
{
public:
	BOOL Name2No( const char * name, CString & no );//强匹配, 要求name完全匹配
	BOOL No2Name( const char * no, CString & name );//弱匹配, 只要no的部分匹配

	void Append( CPhoneBook & phoneBook );
	BOOL RegularizeItem( int pbID );
	BOOL ResetAllItemID();
	BOOL RegularizeAllItem();
	
	BOOL Save( const char * fileName );
	BOOL Load( const char * fileName );
	
	BOOL IsSameItemID( int pdID, int itemID );
	BOOL IsEmptyItemID( int itemID );
	
	int GetPhoneBookSize();//当前已有条目数
	int GetPhoneBookTotalSize();//电话本总容量
	BOOL IsValidItemID( int itemID );//是否有效的条目编号
	void SetPBM( int pbmID );

	int GetEmptyItemID();//取得一个尚未使用的号码本地址, -1为号话本已满

	const char * GetCommandDelItem( int pbID );//删除指定条目的命令
	const char * GetCommandWriteItem( int pbID );//写入指定条目的命令
	const char * GetCommand( int commandID );//取得指定的字串

	const char * GetItemShortDes( int pbID );//取得指定条目的简单描述

	BOOL RemoveAt( int pbID, int nCount = 1 );
	void RemoveAll();//删除所有条目内容

	BOOL HavePB(){ return (m_itemIDMin >= 0); };
	BOOL CheckID( int id );
	
	int AddItem( const char * oStr );//加入一个项目,返回其位置, -1为失败
	int AddItem( int itemID, const char * sName, const char * sPhoneNo );
	
	BOOL EditItem( int id, int itemID, LPCSTR name, LPCSTR no );//修改项目
	BOOL GetItem( int id, int & itemID, CString & name, CString & no );//取得解析后的内容
	BOOL GetItemOStr( int id, CString & sOStr );//取得原码
	CString & GetItemName( int id );//取姓名的引用, 如果id非法, 则返回空字串
	CString & GetItemPhoneNo( int id );//取号码的引用, 如果id非法, 则返回空字串
	int GetItemID( int id );

	CPhoneBook();
	virtual ~CPhoneBook();

CString m_des;//电话本描述: 话机/SIM卡
BOOL m_itemIDMin, m_itemIDMax;
int m_nameLenMax, m_phoneNoLenMax;

protected:
CStringArray m_phoneNoArray;//电话号码
CStringArray m_nameArray;//姓名
CUIntArray m_itemIDArray;//项目标识
CString m_strBuf;
int m_pbmID;//标识电话本类型
};

#endif // !defined(AFX_PHONEBOOK_H__1725A7A1_A826_4CA3_BE84_E6E9F4949057__INCLUDED_)

⌨️ 快捷键说明

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