Converter which escapes characters with special meaning in HTML.

The converter finds characters that are siginificant in HTML source and replaces them with corresponding HTML entities.

The characters that need escaping in HTML are:

  • & (ampersand) always need to be escaped.
  • < (less than) and '>' (greater than) when inside an element.
  • " (quote) when inside a double-quoted attribute value.
  • ' (apostrophe) when inside a single-quoted attribute value. Apostrophe is escaped as &#39; instead of &apos; since not all browsers understand &apos;.

  • / (slash) is recommended to be escaped because it may be used to terminate an element in some HTML dialects.

Escaping > (greater than) isn't necessary, but the result is often found to be easier to read if greater-than is also escaped whenever less-than is.

Inheritance

Properties

mode HtmlEscapeMode
read-only

The HtmlEscapeMode used by the converter.

Constructors

HtmlEscape([HtmlEscapeMode mode = HtmlEscapeMode.UNKNOWN])
const

Create converter that escapes HTML characters.

Methods

bind(Stream source) → Stream
inherited

Transform the incoming stream's events.

convert(String text) → String

Converts input and returns the result of the conversion.

fuse(Converter<String> other) → Converter<String>
inherited

Fuses this with other.

startChunkedConversion(Sink<String> sink) → StringConversionSink

Starts a chunked conversion.