Я хочу отформатировать XML с отступом.Я использую IMXWriter для настройки выходного формата, такого как кодировка, отступ.Но размер выходного файла слишком большой.
Итак, есть ли способ настроить размер вкладки, равный 2?
Мой код выглядит так:
MSXML2::IMXWriterPtr pWriter(__uuidof(MSXML2::MXXMLWriter60));
MSXML2::ISAXXMLReaderPtr pReader(__uuidof(MSXML2::SAXXMLReader60));
pReader->putContentHandler((MSXML2::ISAXContentHandlerPtr)pWriter);
pReader->putErrorHandler((MSXML2::ISAXErrorHandlerPtr)pWriter);
pWriter->put_encoding(L"UTF-8");
pWriter->put_indent(VARIANT_TRUE);
pWriter->put_byteOrderMark(VARIANT_TRUE);
pWriter->put_omitXMLDeclaration(VARIANT_FALSE);
pWriter->put_standalone(VARIANT_TRUE);
DWORD grfMode = STGM_WRITE | STGM_SHARE_EXCLUSIVE | STGM_CREATE;
IStream* pStream;
// ...create a new file opened for write, and return an IStream interface.
hr = ::SHCreateStreamOnFileW(m_xmlPath.GetWCharCP(), grfMode, &pStream);
if (SUCCEEDED(hr))
{
hr = pWriter->put_output(_variant_t(pStream));
if (SUCCEEDED(hr))
hr = pReader->parse((_variant_t) pXMLDom.GetInterfacePtr());
}
pStream->Release();
Я надеюсь, что вкладки выходного XML-файла будут замененына 2 пробела.