📄 tokenizer.cpp
字号:
// Tokenizer.cpp: implementation of the CTokenizer class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "TxtMToTxtE.h"
#include "Tokenizer.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
/*
CTokenizer::CTokenizer()
{
}
*/
CTokenizer::~CTokenizer()
{
}
BOOL CTokenizer::Next(CString &cs)
{
cs.Empty();
while(m_nCurPos<m_cs.GetLength() &&
m_sDelimiter[static_cast<BYTE>(m_cs[m_nCurPos])])
++m_nCurPos;
if(m_nCurPos >= m_cs.GetLength())
return FALSE;
int nStartPos = m_nCurPos;
while(m_nCurPos<m_cs.GetLength() &&
!m_sDelimiter[static_cast<BYTE>(m_cs[m_nCurPos])])
++m_nCurPos;
cs = m_cs.Mid(nStartPos,m_nCurPos - nStartPos);
return TRUE;
}
CString CTokenizer::Tail() const
{
int nCurPos = m_nCurPos;
while(nCurPos<m_cs.GetLength() &&
m_sDelimiter[static_cast<BYTE>(m_cs[nCurPos])])
++nCurPos;
CString csResult;
if(nCurPos < m_cs.GetLength())
csResult = m_cs.Mid(nCurPos);
return csResult;
}
BOOL CTokenizer::FromString(CString s)
{
if(s.IsEmpty())
return FALSE;
/* CString sDelim;
CTokenizer tk(s,sDelim);
CString sElement;
tk.Next(sElement);
sElement.TrimLeft();
sElement.TrimRight();
m_nNumRows = atoi(sElement);
*/
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -