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

📄 mhfile.cpp

📁 墨香最新私服
💻 CPP
字号:
// MHFile.cpp: implementation of the CMHFile class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "MHFile.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////


CMHFile::CMHFile()
{
	fp = NULL;
}

CMHFile::~CMHFile()
{
	Release();
}


BOOL CMHFile::Init(char* filename,char* mode, DWORD dwFlag)
{
	fp = fopen(filename,mode);
	if(fp)
		return TRUE;
	else
	{
		if(!(dwFlag & MHFILE_FLAG_DONOTDISPLAY_NOTFOUNDERROR))
		{			
			char buffer[255];
			sprintf(buffer, "[%s] file is not found",filename);
			MessageBox(NULL, buffer, 0,0);
		}		
		return FALSE;
	}
}

void CMHFile::Release()
{
	if(fp)
	{
		fclose(fp);
		fp = NULL;
	}
}

char* CMHFile::GetString()
{
	static char buf[256];
	fscanf(fp,"%s",buf);
	return buf;
}
void CMHFile::GetString(char* pBuf)
{
	fscanf(fp,"%s",pBuf);
}
void CMHFile::GetLine(char * pBuf, int len)
{
	fgets(pBuf, len, fp);
}
int CMHFile::GetInt()
{
	return atoi(GetString());
}
LONG CMHFile::GetLong()
{
	return (LONG)atoi(GetString());
}
float CMHFile::GetFloat()
{
	return (float)atof(GetString());
}
DWORD CMHFile::GetDword()
{
	return (DWORD)atoi(GetString());
}
WORD CMHFile::GetWord()
{
	return (WORD)atoi(GetString());
}
BYTE CMHFile::GetByte()
{
	return (BYTE)atoi(GetString());
}
BOOL CMHFile::GetBool()
{
	return (BOOL)atoi(GetString());
}
BOOL CMHFile::GetExpPoint()
{
	return (EXPTYPE)atoi(GetString());
}
BOOL CMHFile::GetLevel()
{
	return (LEVELTYPE)atoi(GetString());
}


void CMHFile::GetFloat(float* pArray,int count)
{
	for(int n=0;n<count;++n)
	{
		pArray[n] = GetFloat();
	}
}
void CMHFile::GetWord(WORD* pArray,int count)
{
	for(int n=0;n<count;++n)
	{
		pArray[n] = GetWord();
	}
}
void CMHFile::GetDword(DWORD* pArray,int count)
{
	for(int n=0;n<count;++n)
	{
		pArray[n] = GetDword();
	}
}

BOOL CMHFile::IsEOF()
{
	return feof(fp);
}

BOOL CMHFile::Seek(int n)
{
	return fseek(fp,n,SEEK_CUR);
}

char* CMHFile::GetStringInQuotation()
{
	char buf[256]={0,};
	static char buf2[256];
	int c;
	while( (c=fgetc(fp)) != '"')	// 霉蝶咳钎 唱棵锭鳖瘤 胶诺
	{
		if( c == 10 )//霉蝶咳钎 唱坷扁傈俊 浚磐啊 乐栏搁 吝瘤
		{
			Seek(-1);
			buf2[0] = 0;
			return buf2;
		}
	}
	int n=0;
	while(1)
	{
		ASSERT(!feof(fp));
		buf[n] = fgetc(fp);
		if(buf[n] == '"' )
		{
			buf[n] = 0;
			break;
		}
		if(buf[n] == 10) // 浚磐
		{
			Seek(-1);
			buf[n] = 0;
			break;
		}
		++n;
	}
	char * aa = &buf2[0];
	memcpy( buf2, buf, n+1 );
	return buf2;

}
void CMHFile::GetStringInQuotation(char* pBuf)
{
	strcpy(pBuf,GetStringInQuotation());
}

void CMHFile::SetString(char * str)
{
	fprintf(fp, "%s", str);
}

⌨️ 快捷键说明

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