1 unstable release
0.1.1 | Aug 25, 2023 |
---|---|
0.1.0 |
|
#211 in #attributes
11KB
204 lines
xml-creator
A Rust library for building a simple xml (with childs, attributes, CDATA...)
Usage
Add this to your Cargo.toml
:
[dependencies]
xml-creator = "0.0.1"
and/or this to your crate root:
extern crate xml_creator;
Example
use std::io;
fn main() -> io::Result<()> {
use std::fs::File;
use xml_creator::XMLElement;
/*
let mut file = File::create("example.xml").unwrap();
*/
let mut file: Vec<u8> = Vec::new();
let mut company = XMLElement::new("company");
company.add_attribute("name", "val");
let mut employee = XMLElement::new("employee");
// no escaping and CDATA needed
employee.add_text("Max Mustermann".to_string(), false, false);
let mut cdata = XMLElement::new("cdata");
// will get wrapped into CDATA
cdata.add_text("<p>Some Html</p>".to_string(), false, true);
company.add_child(cdata);
let mut escape = XMLElement::new("escape");
// < will get escaped
escape.add_text("<".to_string(), true, false);
company.add_child(escape);
// add employee to company
company.add_child(employee);
company.write(file)..unwrap();
Ok(())
}
example.xml
will contain:
<?xml version = "1.0" encoding = "UTF-8"?>
<company name="val">
<employee>Max Mustermann</employee>
<cdata><![CDATA[<p>Some Html</p>]]></cdata>
<escape><</escape>
</company>
Dependencies
~1MB
~14K SLoC