# htmlentity
A library for encoding and decoding HTML entities.
[](https://docs.rs/htmlentity)
[](https://github.com/fefit/htmlentity/actions)
[](https://codecov.io/gh/fefit/htmlentity)
## How to use
```rust
use htmlentity::entity::{ encode, decode, EncodeType, CharacterSet, ICodedDataTrait };
use htmlentity::types::{ AnyhowResult, Byte };
fn main() -> AnyhowResult<()> {
let html = "<div name='htmlentity'>Hello!世界!</div>";
let html_after_encoded = "<div name='htmlentity'>Hello!世界!</div>";
// encode
let encoded_data = encode(
html.as_bytes(),
// encode format
&EncodeType::NamedOrHex,
// charcters need to be encoded
&CharacterSet::HtmlAndNonASCII
);
assert_eq!(encoded_data.to_bytes(), html_after_encoded.as_bytes());
assert_eq!(encoded_data.to_string()?, String::from(html_after_encoded));
let char_list = String::from(html_after_encoded).chars().collect::<Vec<char>>();
assert_eq!(encoded_data.to_chars()?, char_list);
// decode