我正在构建一个修改android XML(layout)文件的eclipse插件。我在内部使用 dom 解析器来生成输出 XML。但是,XML格式被搞砸了。
我想使用安卓xml格式机制。我试过这个——
//xmlFile is a IFile
IDocumentProvider provider = new TextFileDocumentProvider(); provider.connect(xmlFile);
IDocument document = provider.getDocument(xmlFile);
xmlFile.setContents(inputStream, IFile.ENCODING_UTF_8, new NullProgressMonitor());
AndroidXmlFormatter a=new AndroidXmlFormatter();
IFormattingContext context=new FormattingContext();
context.setProperty(FormattingContextProperties.CONTEXT_DOCUMENT, Boolean.TRUE);
a.format(document, context);
但是,文档未格式化。 :(可能是什么问题?我的问题有其他选择吗?
仍然没有找到明确的答案。就格式而言,我使用包com.android.ide.eclipse.adt.internal.editors.formating来格式化xml默认的android风格。
XmlFormatPreferences xfp=XmlFormatPreferences.create();
xfp.joinLines=true;
xfp.removeEmptyLines=true;
xfp.useEclipseIndent=true;
return XmlPrettyPrinter.prettyPrint(xmlAsWriter.toString(), xfp, XmlFormatStyle.FILE, "n");