html_character_entities

Creator: coderz1093

Last updated:

Add to Cart

Description:

html character entities

html_character_entities #
A Dart utility class containing maps of key/value pairs for every
HTML 4.01 character entity, including ASCII and hex codes, and methods
to encode and decode strings to and from those character entities.
Usage #
import 'package:html_character_entities/html_character_entities.dart';
copied to clipboard
Decoding Strings #
The decode method accepts a string as an argument and returns it after
replacing every character entity with their corresponding characters.
String string = 'An ampersand can be written as & and &.';

print(HtmlCharacterEntities.decode(string)); // An ampersand can be written as & and &.
copied to clipboard
Encoding Strings #
The encode() method has an argument, [characters], that accepts a string
of all characters that should be encoded. It defaults to the 5 reserved
characters in both HTML and XML: less-than (<), greater-than (>),
ampersand (&), apostrophe or single quote ('), and double-quote (").
String string = '<, >, &, \', and " aren\'t safe to use in HTML and XML.';

print(HtmlCharacterEntities.encode(string));
// &lt;, &gt;, &amp;, &apos;, and &quot; aren&apos;t safe to use in HTML and XML.

print(HtmlCharacterEntities.encode(string, characters: 'XHTML'));
// <, >, &, ', and " aren't safe to use in &#72;&#84;&#77;&#76; and &#88;&#77;&#76;.
copied to clipboard
If [characters] is null, every character in the HtmlCharacterEntities.characters map will be encoded.
Maps #
A map of every HTML 4.01 character code, as well as their ASCII and hex
code entities can be referenced from HtmlCharacterEntities.characters.
Note: The hex codes in the map don't have leading 0s. I.e. the hex
code &#x0000a5; is in the map as &#xa5;. When decoding hex code
entities, the leading 0s will be removed by the parser before being
looked up.
Map<String, String> c = HtmlCharacterEntities.characters;

String string = 'There are 4 suites of cards: ${c['&spades;']} Spades, ${c['&clubs;']} Clubs, ${c['&hearts;']} Hearts, ${c['&diams;']} Diamonds';

print(string); // There are 4 suites of cards: ♠ Spades, ♣ Clubs, ♥ Hearts, ♦ Diamonds
copied to clipboard
Maps containing the characters with their respective character codes
as values can also be referenced. They are used by the encode method.
// A map with only ASCII code character entities as values.
Map<String, String> ascii = HtmlCharacterEntities.asciiCodes;

// A map with all non-ASCII code character entities as values.
Map<String, String> entity = HtmlCharacterEntities.entities;

String string = '< and > exist as both ASCII codes (${ascii['<']} and ${ascii['>']}) and character entities (${entity['<']} and ${entity['>']}).';

print(string); // < and > exist as both ASCII codes (&#60; and &#62;) and character entities (&lt; and &gt;).
copied to clipboard

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.