我想用libtidy(C语言)来清理一些HTML,问题是:如何与tidyParseBuffer()一起使用libtidy?
我想用tidyParseBuffer()构造一个TidyDoc(一个树状结构)。
我对tidyParseFile()没有问题;关于tidyParseBuffer():我确定我正确读取了该文件,并且正确填充了我给tidyParseBuffer()提供的TidyBuffer结构。
任何想法?
这里是代码:
//declaration
tidyInput = malloc(sizeof(TidyBuffer));
tidyOutput = malloc(sizeof(TidyBuffer));
do {
len = fread(pbInputData, 1, nInputData, h->file);
tidyBufAttach(tidyInput, (void*)pbInputData, len);
tidyParseBuffer(h->doc, tidyInput); // doc is the TidyDoc
} while (len >= nInputData);
tidyOptSetBool(h->doc, TidyForceOutput, yes);
tidySaveFile(handler->doc, "C://test.xhtml");
我做了简化代码。
您是否可以指出您遇到的问题,如果可能,使用一些源代码? – 2009-10-19 15:03:09
我不知道如何将代码放入评论中,所以我会尽力解释。 这就像每次调用tidyParseBuffer都会清除TidyDoc结构..也许这是该函数的正确行为..不知道,要检查tidyParseStdin – 2009-10-19 15:19:16
你能用代码更新问题吗? – 2009-10-19 15:22:22