10 _whitespaceMode(whitespaceMode),
18XmlDocument::~XmlDocument()
38 return XMLError::XML_SUCCESS;
45 KHL_XML_ASSERT(
false);
46 SetError(XML_ERROR_FILE_COULD_NOT_BE_OPENED, 0,
"filename=<null>");
51 FILE *fp = XmlUtil::callfopen(filename,
"rb");
62void XmlDocument::Parse()
69 KHL_XML_ASSERT(error >= 0 && error < XML_ERROR_COUNT);
80 const size_t BUFFER_SIZE = 1000;
81 char *buffer =
new char[BUFFER_SIZE];
83 KHL_XML_ASSERT(
sizeof(error) <=
sizeof(
int));
84 XmlUtil::snprintf_(buffer, BUFFER_SIZE,
"Error=%s ErrorID=%d (0x%x) Line number=%d",
"",
int(error),
int(error), lineNum);
88 size_t len = strlen(buffer);
89 XmlUtil::snprintf_(buffer + len, BUFFER_SIZE - len,
": ");
94 XmlUtil::vsnprintf_(buffer + len, BUFFER_SIZE - len, format, va);
97 _errorStr.SetStr(buffer);
XMLError Parse(const char *xml, size_t nBytes=static_cast< size_t >(-1))
xml 字符串
XMLError LoadFile(const char *filename)
filename 文件名
void SetError(XMLError error, int lineNum, const char *format,...)
@ XML_ERROR_FILE_NOT_FOUND
文件不存在