UTF-8 No-BOM Export Standard Check

Check a chosen export profile of well-formed RFC 3629 UTF-8 without an initial BOM, reporting UTF-8 validity separately from profile conformance; UTF-8 itself permits a BOM.

Description

UTF-8 validity and a no-BOM export policy are separate checks.

UTF-8 validity and a no-BOM export policy are separate checks. A valid UTF-8 stream may begin with a byte-order mark even when a selected consumer profile excludes it.1

Check a chosen export profile of well-formed RFC 3629 UTF-8 without an initial BOM, reporting UTF-8 validity separately from profile conformance; UTF-8 itself permits a BOM.

When to use UTF-8 No-BOM Export Standard Check

Use this for the following task: Check a chosen export profile of well-formed RFC 3629 UTF-8 without an initial BOM, reporting UTF-8 validity separately from profile conformance; UTF-8 itself permits a BOM.

Prepare the CSV text, decoded cells or byte values requested below. Choose delimiter and header flags explicitly when those fields are present.

How to use UTF-8 No-BOM Export Standard Check and understand its results

  1. Prepare the CSV text, decoded cells or byte values requested below. Choose delimiter and header flags explicitly when those fields are present.
  2. Enter bytes using the field table, then run the tool.
  3. Read validUtf8, hasBom, conforms, errorOffset. Interpret flags, units, ordering and placeholder values using the rules below.
  4. Review any reported issue or failed check, correct the supplied values when appropriate, and verify the result in its intended context.
Input fieldMeaningValue type and boundsRequirement
bytesByteslist of integer; minimum entries 0; maximum entries 100000; each entry: integer; minimum 0; maximum 255Required

Supply integer bytes 0–255. Check ASCII and valid 2/3/4-byte sequences, excluding overlong encodings, surrogates and values above U+10FFFF. Detect initial EF BB BF separately; errorOffset names the zero-based lead byte of the first bad sequence.2

conforms = validUtf8 AND !hasBom; validUtf8 = errorOffset == −1

This summarizes the declared operation. Units, indexing, inclusivity and exceptional cases are explained in the surrounding text.

Output fieldMeaningValue type
validUtf8Valid utf8boolean
hasBomHas bomboolean
conformsConformsboolean
errorOffsetError offsetinteger
json
{
  "input": {
    "bytes": [
      65,
      44,
      195,
      169,
      10
    ]
  },
  "output": {
    "validUtf8": true,
    "hasBom": false,
    "conforms": true,
    "errorOffset": -1
  }
}

Limitations and assumptions

UTF-8 itself permits a BOM. This profile does not validate CSV syntax or decode cell values.

Supply the decoded cell strings or raw values declared by the input fields; this tool does not load a spreadsheet file. Malformed requests produce input errors. A successfully evaluated request can still contain false flags, empty result lists or a result outside the supplied threshold; those outcomes have the meanings stated above.

Alternative or Complementary methods

Choose UTF-8 BOM Detector for this operation: Detect only an initial EF BB BF byte sequence; the rest of the input is not decoded or validated as UTF-8. For a complementary task, use Quoted Multiline Safe Splitter for this operation: Split CSV into raw record fragments without outer record endings, preserving quote spelling, embedded line endings, blank records, and escaped quote pairs.

Further background: Format and language reference: UTF-8 No-BOM Export Standard Check.

References

  1. Format and language reference: UTF-8 No-BOM Export Standard Check — RFC Editor

  2. UTF-8 No-BOM Export Standard Check — tool.io

Similar or alternative tools

  • UTF-8 BOM Detector

    Detect only an initial EF BB BF byte sequence; the rest of the input is not decoded or validated as UTF-8.

  • Quoted Multiline Safe Splitter

    Split CSV into raw record fragments without outer record endings, preserving quote spelling, embedded line endings, blank records, and escaped quote pairs.

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies