package edu.basejava.util;
public class XmlDoc
{
private Instruction declare;
private Element root;
private static final String VERSION = "version";
private static final String ENCODING = "encoding";
private String version = "1.0";
private String encoding = "utf-8";
public XmlDoc()
{
this.init(null);
}
public XmlDoc(Element root)
{
this.init(root);
}
public void save(XmlDoc xd,String file) {
CharFileIO.writeTxtFile(xd.toString(),file,this.getEncoding());
}
public String getEncoding()
{
return encoding;
}
public void setEncoding(String encoding)
{
this.encoding = encoding;
}
public Element getRoot()
{
return root;
}
public void setRoot(Element root)
{
this.root = root;
}
public String getVersion()
{
return version;
}
public void setVersion(String version)
{
this.version = version;
}
private void init(Element root)
{
declare = new Instruction("xml", new Attribute(VERSION, version),
new Attribute(ENCODING, encoding));
if (root == null)
this.root = new Element("root");
else
this.root = root;
}
public String toString()
{
return (this.declare.toString() + this.root.toString());
}
}
分享到:
相关推荐
MFC虽然不是一个专门处理XML的库,但它提供了一些基础的支持,如CXMLElement类和CXMLNode类,这些类可以帮助我们解析和生成XML文档。 以下是一个简单的使用MFC处理XML的步骤: 1. **加载XML文件**:使用`CFile`类...
接下来,可以通过`load`方法加载一个XML文件,或者使用`createProcessingInstruction`方法创建XML声明,再使用`appendChild`将它添加到文档中。 ```javascript var p = doc.createProcessingInstruction("xml", ...
本篇文章将深入探讨一个基于Delphi实现的XML文件读写配置类——XMLIniFiles.pas。这个类库的设计目的是为开发者提供一种类似于传统的.INI文件的操作方式,但利用XML的强大功能。 首先,我们来理解一下XML文件的基本...
`xml_document`代表整个XML文档,而`xml_node`表示文档中的一个节点,可以是元素、属性、文本等。 读取XML文件: 1. **初始化pugixml库**:在使用pugixml之前,需要包含头文件`#include <pugixml.hpp>`。 2. **加载...
TinyXML 是一个小型、开源的 C++ 库,专门用于解析和生成 XML(eXtensible Markup Language)文档。在本文中,我们将深入探讨如何使用 TinyXML 来读写 XML 文件,以及它在 Visual C++ 开发环境中的应用。 1. **Tiny...
- `Markup.cpp`和`Markup.h`文件中定义了一个自定义的XML类,它可能简化了XML的读写过程,提供了更友好的API。 - 这个类可能会包含解析XML文件、创建XML节点、设置属性、添加子节点、序列化XML为字符串等功能。 -...
它是一个只读、向前只进的流式读取器,可以快速遍历XML结构。但是,它不支持写入操作。 3. **XPathNavigator类**: XPathNavigator基于XPath表达式,提供了一种高效的方式来查找、读取和修改XML文档。与...
本次重构的主题是创建一个快速读写XML文件的工具类,这在处理数据存储和交换时非常常见。XML(eXtensible Markup Language)是一种结构化数据格式,广泛应用于配置文件、数据传输和数据存储等领域。 在描述中提到的...
// 创建一个新的XML文档 QDomDocument doc; QDomElement root = doc.createElement("root"); doc.appendChild(root); // 添加元素 QDomElement item = doc.createElement("item"); item.setAttribute("id", "1"); ...
2. **XmlNode** 和其子类:XmlNode代表XML文档中的一个节点,如元素(XmlElement)、属性(XmlAttribute)等。 3. **XmlNodeReader** 和 **XmlWriter**:用于流式读取和写入XML文档,效率较高,但不如DOM灵活。 4....
在C#中,读取XML文件最常用的是`XmlDocument`类,它提供了一种树形结构来表示XML文档。 **读取XML文件** 1. 使用`XmlDocument.Load`方法加载XML文件: ```csharp XmlDocument doc = new XmlDocument(); doc....
- **创建XML文档**:使用`pugi::xml_document`的`begin_write()`方法初始化一个新的XML文档,如`doc.begin_write();` - **添加元素和属性**:使用`xml_node`的`append_child()`和`append_attribute()`方法。例如,...
android中读写xml文件简单demo,可以通过此代码来简单的读取xml配置文件
首先,我们关注的是"OpXmlDemo.sln"文件,这是一个Visual Studio解决方案文件。它包含了项目的所有配置信息,包括引用的库、项目设置以及项目间的依赖关系。当你打开这个文件时,Visual Studio会加载整个解决方案,...
该函数接受一个参数作为根元素的名称,返回一个包含该根元素的XML文档对象。 ```matlab docNode = com.mathworks.xml.XMLUtils.createDocument('obj'); ``` 在这个例子中,`obj`是根节点的名字。创建完文档对象后...
Config类中可以包含多个属性,例如ClientDescription、IsAuto、CustomerInfos和ScanConfigs等,每个属性都可以对应XML文件中的一个节点。 为了将XML文件反序列化为实体类对象,我们需要使用[XmlRoot]、[XmlElement]...
这是一个基于MFC的XML文档的读写封装类,利用了tinyXML的解析器进行解析,然后处理解析树,并将信息封装到了具体实例中,实现了对XML文档的读写操作。 如果对XML读写有疑惑可以下下来看一看~相信会有帮助
TMemo是一个常用的文本显示组件,可以用于显示XML文档的内容。假设你的TMemo组件名为Memo1,可以这样做: ```delphi Memo1.Text := XMLDoc.DocumentElement.Text; ``` 这会将XML文档的根元素内容显示在TMemo上...
基于dom4j的读写xml文件的工具包。封装了dom4j操作xml文档的常和方法。 支持两种读写方法。1:针对小文件的读取整个文档,2:针对大文件的,逐行读取。读到几百M文件毫无压力。
在这个主题中,我们关注的是一个已经封装好的C#类,名为`CReadXml`,它简化了XML文件的读写操作。这个类可能包含了处理常见问题的代码,如在尝试删除或改写文件时遇到的"文件正在使用"的错误。 首先,让我们详细...