simpleparsers.h

来自「一个统计文件大小和程序信息的插件程序(vc或vc.net下使用)」· C头文件 代码 · 共 93 行

H
93
字号
/***************************************************************************/
/* NOTE:                                                                   */
/* This document is copyright (c) by Oz Solomonovich, and is bound by the  */
/* MIT open source license (www.opensource.org/licenses/mit-license.html). */
/* See License.txt for more information.                                   */
/***************************************************************************/

#ifndef __SIMPLEPARSERS_H
#define __SIMPLEPARSERS_H

#include "FileParser.h"

class CSimpleCommentParser : public IFileParser
{
public:
    CSimpleCommentParser(LPCTSTR pszCommentPrefix);

    virtual void ParseFile(ifstream& ifs, CFileInfo& info);

protected:
    CString m_sCommentPrefix;
};


class CPlainTextParser : public CSimpleCommentParser
{
public:

    CPlainTextParser() : CSimpleCommentParser("") {}

    LPCTSTR GetDefaultExtensions() const
    {
        return _T("BAT/TXT/RGS");
    }

    virtual LPCTSTR GetParserCfgCode() const 
    {
        return _T("TXT");
    }

    virtual int GetParserNameResourceID() const
    {
        return IDS_PARSERNAME_TXT;
    }
};

class CINIParser : public CSimpleCommentParser
{
public:

    CINIParser() : CSimpleCommentParser(";") {}

    LPCTSTR GetDefaultExtensions() const
    {
        return _T("INI/DEF/HHP/HPJ");
    }

    virtual LPCTSTR GetParserCfgCode() const 
    {
        return _T("INI");
    }

    virtual int GetParserNameResourceID() const
    {
        return IDS_PARSERNAME_INI;
    }
};

class CMakeFileParser : public CSimpleCommentParser
{
public:

    CMakeFileParser() : CSimpleCommentParser("#") {}

    LPCTSTR GetDefaultExtensions() const
    {
        return _T("MAK/MAKE/PROPERTIES");
    }

    virtual LPCTSTR GetParserCfgCode() const 
    {
        return _T("MAK");
    }

    virtual int GetParserNameResourceID() const
    {
        return IDS_PARSERNAME_MAK;
    }
};


#endif // __SIMPLEPARSERS_H

⌨️ 快捷键说明

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