?? dirfileinfo.h
字號(hào):
// DirFileInfo.h: interface for the CDirFileInfo class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_DIRFILEINFO_H__713A1038_E2F0_40B5_A889_5AFB9464E0BA__INCLUDED_)
#define AFX_DIRFILEINFO_H__713A1038_E2F0_40B5_A889_5AFB9464E0BA__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "TreeInfo.h"
const int MAX_ID_LEN = 128;
const int MAX_NAME_LEN = 128;
const int MAX_COMMENT_LEN = 512;
class CDirFileNode : public CTreeNode
{
public:
CDirFileNode() {}
virtual ~CDirFileNode() { }
CDirFileNode & operator=( const CDirFileNode & dfNode )
{
if( this == &dfNode )
return *this;
_tcscpy(szID, dfNode.szID);
_tcscpy(szName, dfNode.szName );
_tcscpy(szComment, dfNode.szComment);
bIsDir = dfNode.bIsDir;
nWidth = dfNode.nWidth;
nHeight = dfNode.nHeight;
return *this;
}
public:
_TCHAR szID[ MAX_ID_LEN + 1 ];
_TCHAR szName[MAX_NAME_LEN + 1];
_TCHAR szComment[MAX_COMMENT_LEN + 1];
BOOL bIsDir;
int nWidth;
int nHeight;
};
class CDirFileInfo : public CTreeInfo
{
public:
virtual PTREENODE MallocNode( void );
virtual void FreeNode( PTREENODE pNode );
virtual int GetNodeSize(void) const;
// 將節(jié)點(diǎn)信息置零。注意:由于節(jié)點(diǎn)有虛函數(shù)表,所以不能使用memset(...sizeof())來(lái)實(shí)現(xiàn)
virtual void ZeroNode( PTREENODE pNode );
BOOL IsDirNode( CDirFileNode * pNode ) const { return (pNode != NULL) && pNode->bIsDir; }
void CalcAllLeafID( CStringArray & arrID );
//////////////////////////////////////////////////////////////////////
// 文件操作
//////////////////////////////////////////////////////////////////////
// 將指定節(jié)點(diǎn)的所有子孫節(jié)點(diǎn)保存到文件。注意:指定的節(jié)點(diǎn)本身并不被保存!
BOOL SaveToFile( CDirFileNode * pNode, FILE * pFile );
// 從文件中讀取所有節(jié)點(diǎn)信息.
// pRoot != NULL,讀取的節(jié)點(diǎn)按鏈表順序作為pRoot的子孫節(jié)點(diǎn)
BOOL ReadFromFile( FILE * pFile, CDirFileNode * pRoot );
//read unicode
BOOL ReadFromFileEx( FILE * pFile, CDirFileNode * pRoot );
public:
CDirFileInfo();
virtual ~CDirFileInfo();
protected:
BOOL RecursiveSave(CDirFileNode * pNode, FILE * pFile);
BOOL RecursiveCalcAllLeafID( CDirFileNode * pNode, CStringArray & arrID );
private:
CDirFileNode m_TempNode;
};
#endif // !defined(AFX_DIRFILEINFO_H__713A1038_E2F0_40B5_A889_5AFB9464E0BA__INCLUDED_)
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -