zfile.h

来自「Symbian手机智能操作系统下的源码,图像查看软件,支持十几种图形格式.」· C头文件 代码 · 共 91 行

H
91
字号
#pragma once

#include <windows.h>
#include <tchar.h>
#include <vector>
using namespace std;

#define MAX_LINE	1024		//在对文本文件进行读取操作时,一行的最大大小.

class zFile
{
public:
	zFile(void);
	~zFile(void);
private:
	FILE*	m_pFile;
	TCHAR	m_szName[MAX_PATH];
public:
	BOOL	CreateFile(TCHAR * pFileName,TCHAR * pFileMode);
//	BOOL	DeleteFile();
	BOOL	CloseFile();

//	BOOL	GetFileAttributes();  //GetFileAttributesEx()
//	BOOL	GetFileSize(LARGE_INTEGER * FileSize);

	size_t	ReadFile(LPVOID lpBuffer,DWORD nCharSize,DWORD nByteSize);	
	size_t	WriteFile(LPVOID lpBuffer,DWORD nCharSize,DWORD nByteSize);
	BOOL	Flush();

	size_t	GetFilePointer();
	size_t	SetFilePointer(DWORD NewPointer,DWORD MoveMethod);	//SEEK_CUR,SEEK_END,SEEK_SET 
};

//	获取文件的全路经和名字
//	struct data_xml
//	{
//		char	name[128];
//		char	fullname[256];
//		data_xml() { memset(this,0,sizeof(data_xml)); }
//	}xml;
//	vector<data_xml> vXml; vXml.Clear();
//	zFileFind ff;
//	ff.FindFirstFile("*.xml");
//	if (ff.m_hFind!=INVALID_HANDLE_VALUE)
//	{
//		do{
//			_tcscpy(xml.fullname,tmp_path);
//			_tcscat(xml.fullname,ff.m_find.cFileName);
//			_tcscpy(sz,ff.m_find.cFileName);
//			int len = _tcslen(sz);
//			char * p = NULL;
//			for (int i=len;i>=0;i--)
//			{
//				if (sz[i]=='.')
//				{
//					sz[i]='\0';
//					break;
//				}
//			}
//			_tcscpy(xml.name,sz);
//			vXml.push_back(xml);
//		}while(ff.FindNextFile());
//	}
//	ff.FindClose();
	

//	C++实现
//	_finddata_t ft;
//	intptr_t t;
//	t = ::_findfirst(tmp_path,&ft);
//	while(::_findnext(t,&ft));
//	{
//		int a = 0;
//	}
//	::_findclose(t);

class zFileFind
{
public:
	zFileFind();
	~zFileFind();

	BOOL	FindClose();
	HANDLE	FindFirstFile(const TCHAR * FindName = _T("*.*"));
	BOOL	FindNextFile();

	HANDLE	m_hFind;	
	WIN32_FIND_DATA m_find;
};

⌨️ 快捷键说明

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