#pragma once
#include "MyFile.h"

class CWinFile : public CMyFile
{
	public:
		enum FILE_CHARSET {CHARSET_UNDEFINE, CHARSET_KOI8, CHARSET_CP866, CHARSET_CP1251, CHARSET_UTF8, CHARSET_UNICODE};
	protected:
		FILE_CHARSET m_nManualCharset;
		FILE_CHARSET AnalyseCharset(); //анализ кодировки.
		WCHAR ReadUTF8Char();
		CString GetFormatName(FILE_CHARSET fchr);
	public:
		CWinFile(const CString &strName, FILE_CHARSET nManualCharSet = CWinFile::CHARSET_UNDEFINE);
		virtual ~CWinFile(void);

		virtual BOOL Open(BOOL bWrite = FALSE); //открытие файла, имя которого задано в конструкторе
		virtual WCHAR ReadChar();
		virtual BOOL WriteChar(WCHAR ch);

};

