xml 및 xsl 파일이 있습니다. xsl의 출력은 텍스트 일뿐입니다. 즉, 일부 조건이 실패한 경우 결과는 실패에 대한 설명 일뿐입니다. 모든 조건이 통과하면 결과는 널입니다. xsltproc에서 이것을 실행하면 잘 작동합니다.XSLT : xsltApplyStylesheet가 null을 반환합니다.
그러나 xsltApplyStylesheet 함수를 사용하여 libxslt를 실행하면 빈 결과가 나타납니다. xsltApplyStylesheet에 대한 입력 xml은 코드에서 동적으로 작성됩니다. xsl 파일은 xsltParseStylesheetFile을 사용하여 읽습니다. (나는 xml과 xsltParseStylesheetFile-> doc의 출력물 인 xmlDocDumpFormatMemory를 사용했는데 둘 다 괜찮을 것 같다.) ApplyStylesheet 후에 xsltSaveResultToString을 시도했지만 작동하지 않습니다.
여기에는 어떤 문제가있을 수 있습니까?
코드 조각 :
xmldoc = xmlNewDoc(BAD_CAST "1.0");
c = xmlNewNode(NULL, BAD_CAST "Company");
xmlAddChild(c, node); //node is another child in XML
xmlAddChild(c, d); //d is another child in xml
xmlDocSetRootElement(xmldoc, c);
.....
xsl = xsltParseStylesheetFile("xsl.file");
....
output = xsltApplyStylesheet(xsl, xmldoc, NULL);
....
//output has just "<?xml version="1.0"?>"
TIA와 당신의 도움을 주셔서 감사합니다!