C++ HTTP Stack
0.10
|
HTML 문서 파서/생성 라이브러리 더 자세히 ...
클래스 | |
class | CHtmlAttributeValue |
HTML 애트리뷰트의 값을 저장하는 클래스 더 자세히 ... | |
class | CHtmlElement |
HTML element 문자열을 파싱하여서 저장하는 클래스 더 자세히 ... |
타입정의 | |
typedef std::map< std::string, CHtmlAttributeValue > | HTML_ATTRIBUTE_MAP |
HTML attribute map. | |
typedef std::map< std::string, char > | HTML_CLASS_MAP |
HTML class map. | |
typedef std::list< CHtmlElement > | HTML_ELEMENT_LIST |
CHtmlElement 객체 리스트 |
열거형 타입 | |
enum | EHtmlElementType { E_HET_NULL, E_HET_SCRIPT, E_HET_NOT_CLOSED } |
HTML element 의 종류 더 자세히 ... |
함수 | |
int | CHtmlElement::Parse (const char *pszText, int iTextLen) |
HTML 문자열을 파싱하여서 멤버 변수에 저장한다. | |
int | CHtmlElement::Parse (std::string &strText) |
XML 문자열을 파싱하여서 멤버 변수에 저장한다. | |
int | CHtmlElement::ToString (char *pszText, int iTextSize, bool bUseTab=false, int iDepth=0) |
멤버 변수에 저장된 값을 이용하여서 XML 문자열을 생성한다. | |
void | CHtmlElement::ToString (std::string &strText, bool bUseTab=false, int iDepth=0) |
멤버 변수에 저장된 값을 이용하여서 XML 문자열을 생성한다. | |
void | CHtmlElement::GetText (std::string &strText) |
TAG 를 제외한 텍스트만 가져온다. | |
void | CHtmlElement::GetText (std::string &strText, bool(*Allow)(CHtmlElement *pclsElement)) |
TAG 를 제외한 텍스트만 가져온다. | |
void | CHtmlElement::Clear () |
멤버 변수를 초기화시킨다. | |
const char * | CHtmlElement::SelectAttribute (const char *pszName) |
애트리뷰트에 해당하는 값을 검색한다. | |
const char * | CHtmlElement::SelectAttributeTrim (const char *pszName) |
애트리뷰트에 해당하는 값을 검색한다. | |
bool | CHtmlElement::SelectAttribute (const char *pszName, std::string &strValue) |
애트리뷰트에 해당하는 값을 검색한다. | |
bool | CHtmlElement::SelectAttributeTrim (const char *pszName, std::string &strValue) |
애트리뷰트에 해당하는 값을 검색한다. | |
bool | CHtmlElement::SelectAttribute (const char *pszName, int &iValue) |
애트리뷰트에 해당하는 값을 검색하여 int 변수에 저장한다. | |
CHtmlElement * | CHtmlElement::SelectElement (const char *pszName, const int iIndex=0) |
하위 Element 를 검색한다. | |
CHtmlElement * | CHtmlElement::SelectElement (const int iIndex) |
하위 Element 를 검색한다. | |
bool | CHtmlElement::SelectElementList (const char *pszName, HTML_ELEMENT_LIST &clsList) |
하위 Element 를 검색하여서 Element 리스트에 저장한다. | |
const char * | CHtmlElement::GetElementData (const char *pszName, const int iIndex=0) |
하위 Element 의 값 문자열의 포인터를 리턴한다. | |
const char * | CHtmlElement::GetElementDataTrim (const char *pszName, const int iIndex=0) |
하위 Element 의 값 문자열의 포인터를 리턴한다. | |
bool | CHtmlElement::SelectElementData (const char *pszName, std::string &strData, const int iIndex=0) |
하위 Element 를 검색하여서 내용을 저장한다. | |
bool | CHtmlElement::SelectElementTrimData (const char *pszName, std::string &strData, const int iIndex=0) |
하위 Element 를 검색하여서 내용을 저장한다. | |
const char * | CHtmlElement::GetName () |
Element 이름을 리턴한다. | |
const char * | CHtmlElement::GetData () |
Element 내용을 리턴한다. | |
bool | CHtmlElement::IsDataEmpty () |
Element 내용이 존재하면 true 를 리턴하고 그렇지 않으면 false 를 리턴한다. | |
bool | CHtmlElement::IsId (const char *pszId) |
id 인지 검사한다. | |
bool | CHtmlElement::IsClass (const char *pszClass) |
class 인지 검사한다. | |
void | CHtmlElement::SetName (const char *pszText, int iNameLen) |
TAG 이름을 저장한다. | |
void | CHtmlElement::AddAttribute (std::string &strName, std::string &strValue, char cSep) |
애트리뷰트를 저장한다. | |
void | CHtmlElement::AddClass (const char *pszClass, int iClassLen=-1) |
class 를 저장한다. |
HTML 문서 파서/생성 라이브러리
typedef std::map< std::string, CHtmlAttributeValue > HTML_ATTRIBUTE_MAP |
HTML attribute map.
key 는 attribute 이름이고 value 는 attribute 값이다.
typedef std::map< std::string, char > HTML_CLASS_MAP |
HTML class map.
key 는 class 이름이고 value 은 의미가 없다.
typedef std::list< CHtmlElement > HTML_ELEMENT_LIST |
CHtmlElement 객체 리스트
enum EHtmlElementType |
|
protected |
애트리뷰트를 저장한다.
strName | 애트리뷰트 이름 |
strValue | 애트리뷰트 값 |
cSep | 애티리뷰트 값 구분 문자 |
|
protected |
class 를 저장한다.
pszClass | class 문자열 |
iClassLen | class 문자열 길이 |
void CHtmlElement::Clear | ( | ) |
멤버 변수를 초기화시킨다.
const char * CHtmlElement::GetData | ( | ) |
Element 내용을 리턴한다.
const char * CHtmlElement::GetElementData | ( | const char * | pszName, |
const int | iIndex = 0 |
||
) |
하위 Element 의 값 문자열의 포인터를 리턴한다.
pszName | 하위 Element 이름 |
iIndex | 하위 Element 인덱스. 0 을 입력하면 첫번째 검색된 하위 Element 를 리턴하고 1 을 입력하면 두번째 검색된 하위 Element 를 리턴한다. |
const char * CHtmlElement::GetElementDataTrim | ( | const char * | pszName, |
const int | iIndex = 0 |
||
) |
하위 Element 의 값 문자열의 포인터를 리턴한다.
pszName | 하위 Element 이름 |
iIndex | 하위 Element 인덱스. 0 을 입력하면 첫번째 검색된 하위 Element 를 리턴하고 1 을 입력하면 두번째 검색된 하위 Element 를 리턴한다. |
const char * CHtmlElement::GetName | ( | ) |
Element 이름을 리턴한다.
void CHtmlElement::GetText | ( | std::string & | strText | ) |
TAG 를 제외한 텍스트만 가져온다.
strText | [out] TAG 를 제외한 텍스트를 저장할 변수 |
void CHtmlElement::GetText | ( | std::string & | strText, |
bool(*)(CHtmlElement *pclsElement) | Allow | ||
) |
TAG 를 제외한 텍스트만 가져온다.
strText | [out] TAG 를 제외한 텍스트를 저장할 변수 |
Allow | 텍스트를 가져올 HTML element 인지 검사하는 함수 |
bool CHtmlElement::IsClass | ( | const char * | pszClass | ) |
class 인지 검사한다.
pszClass | class |
bool CHtmlElement::IsDataEmpty | ( | ) |
Element 내용이 존재하면 true 를 리턴하고 그렇지 않으면 false 를 리턴한다.
bool CHtmlElement::IsId | ( | const char * | pszId | ) |
id 인지 검사한다.
pszId | id |
int CHtmlElement::Parse | ( | const char * | pszText, |
int | iTextLen | ||
) |
HTML 문자열을 파싱하여서 멤버 변수에 저장한다.
pszText | HTML 문자열 |
iTextLen | HTML 문자열 길이 |
int CHtmlElement::Parse | ( | std::string & | strText | ) |
XML 문자열을 파싱하여서 멤버 변수에 저장한다.
strText | XML 문자열 |
const char * CHtmlElement::SelectAttribute | ( | const char * | pszName | ) |
애트리뷰트에 해당하는 값을 검색한다.
pszName | 애트리뷰트 이름 |
bool CHtmlElement::SelectAttribute | ( | const char * | pszName, |
std::string & | strValue | ||
) |
애트리뷰트에 해당하는 값을 검색한다.
pszName | 애트리뷰트 이름 |
strValue | 애트리뷰트 값 |
bool CHtmlElement::SelectAttribute | ( | const char * | pszName, |
int & | iValue | ||
) |
애트리뷰트에 해당하는 값을 검색하여 int 변수에 저장한다.
pszName | 애트리뷰트 이름 |
iValue | 애트리뷰트 값 |
const char * CHtmlElement::SelectAttributeTrim | ( | const char * | pszName | ) |
애트리뷰트에 해당하는 값을 검색한다.
값의 앞, 뒤 공백을 제거한 문자열의 포인터를 리턴한다.
pszName | 애트리뷰트 이름 |
bool CHtmlElement::SelectAttributeTrim | ( | const char * | pszName, |
std::string & | strValue | ||
) |
애트리뷰트에 해당하는 값을 검색한다.
검색에 성공하면 값의 왼쪽, 오른쪽 공백을 제거한다.
pszName | 애트리뷰트 이름 |
strValue | 애트리뷰트 값 |
CHtmlElement * CHtmlElement::SelectElement | ( | const char * | pszName, |
const int | iIndex = 0 |
||
) |
하위 Element 를 검색한다.
pszName | 하위 Element 이름 |
iIndex | 하위 Element 인덱스. 0 을 입력하면 첫번째 검색된 하위 Element 를 리턴하고 1 을 입력하면 두번째 검색된 하위 Element 를 리턴한다. |
CHtmlElement * CHtmlElement::SelectElement | ( | const int | iIndex | ) |
하위 Element 를 검색한다.
iIndex | 하위 Element 인덱스. 0 을 입력하면 첫번째 검색된 하위 Element 를 리턴하고 1 을 입력하면 두번째 검색된 하위 Element 를 리턴한다. |
bool CHtmlElement::SelectElementData | ( | const char * | pszName, |
std::string & | strData, | ||
const int | iIndex = 0 |
||
) |
하위 Element 를 검색하여서 내용을 저장한다.
pszName | 하위 Element 이름 |
strData | 하위 Elemnet 의 내용을 저장할 변수 |
iIndex | 하위 Element 인덱스. 0 을 입력하면 첫번째 검색된 하위 Element 를 리턴하고 1 을 입력하면 두번째 검색된 하위 Element 를 리턴한다. |
bool CHtmlElement::SelectElementList | ( | const char * | pszName, |
HTML_ELEMENT_LIST & | clsList | ||
) |
하위 Element 를 검색하여서 Element 리스트에 저장한다.
pszName | 하위 Element 이름 |
clsList | 하위 Element 를 저장할 변수 |
bool CHtmlElement::SelectElementTrimData | ( | const char * | pszName, |
std::string & | strData, | ||
const int | iIndex = 0 |
||
) |
하위 Element 를 검색하여서 내용을 저장한다.
검색에 성공하면 내용의 왼쪽, 오른쪽 공백을 제거한다.
pszName | 하위 Element 이름 |
strData | 하위 Elemnet 의 내용을 저장할 변수 |
iIndex | 하위 Element 인덱스. 0 을 입력하면 첫번째 검색된 하위 Element 를 리턴하고 1 을 입력하면 두번째 검색된 하위 Element 를 리턴한다. |
|
protected |
TAG 이름을 저장한다.
pszText | TAG 이름 |
iNameLen | TAG 이름 길이 |
int CHtmlElement::ToString | ( | char * | pszText, |
int | iTextSize, | ||
bool | bUseTab = false , |
||
int | iDepth = 0 |
||
) |
멤버 변수에 저장된 값을 이용하여서 XML 문자열을 생성한다.
pszText | XML 문자열을 저장할 변수 |
iTextSize | XML 문자열을 저장할 변수의 크기 |
bUseTab | TAB 문자를 사용하는가? 하위 element 시작시 TAB 문자를 넣어주고 싶으면 true 를 입력하고 그렇지 않으면 false 를 입력한다. |
iDepth | XML 하위 element 깊이. 맨 위의 XML element 는 0 이고 그 하위 element 는 1 이다. |
void CHtmlElement::ToString | ( | std::string & | strText, |
bool | bUseTab = false , |
||
int | iDepth = 0 |
||
) |
멤버 변수에 저장된 값을 이용하여서 XML 문자열을 생성한다.
strText | XML 문자열을 저장할 변수 |
bUseTab | TAB 문자를 사용하는가? 하위 element 시작시 TAB 문자를 넣어주고 싶으면 true 를 입력하고 그렇지 않으면 false 를 입력한다. |
iDepth | XML 하위 element 깊이. 맨 위의 XML element 는 0 이고 그 하위 element 는 1 이다. |