What is Decimal to Text Converter?
A Decimal to Text Converter converts Decimal into Text directly in your browser. It parses the source format, applies the standard mapping or formula, and outputs the target format ready to copy. Decode space-separated decimal byte values (0-255 per byte) back to UTF-8 text.
Decimal to Text Converter
Convert space-separated decimal byte values back to text. UTF-8 aware.
TLDR
Paste decimal byte values (space-separated, each 0-255), click Convert. The tool decodes each as a byte and UTF-8-parses the result.
About the decimal to text converter
This tool reverses a text-to-decimal encoding: you paste a list of decimal byte values and it reconstructs the original text. It is the decoding half of the byte-numbers workflow, handy when you receive a numeric byte array from a log, a microcontroller, a teaching exercise, or another tool and need to read the human-readable string behind it. It is also a quick way to verify that an encoding round-trips correctly.
Decoding uses UTF-8, the standard text encoding of the web, so single bytes below 128 map to ordinary ASCII characters while groups of two to four bytes rebuild accented letters and emoji. Everything runs locally through the browser's TextDecoder, so the numbers you paste never leave your device.
How the decoding works
The input is split into numbers, each is parsed as a byte, the bytes are collected into an array, and that array is decoded as UTF-8 text.
bytes = input.split(/\s+/).map(n => parseInt(n, 10)) // each 0..255 text = new TextDecoder().decode(new Uint8Array(bytes))
Order matters: the bytes must appear in the exact sequence they were encoded, because a multibyte character is split across consecutive bytes. Drop or reorder one and the character cannot be rebuilt.
Worked example
Decode the byte values 72 105 33 back to text.
- 72 is the byte for
H. - 105 is the byte for
i. - 33 is the byte for
!.
72 105 33 -> "Hi!"
These are all single ASCII bytes. To decode an accented e you would supply both of its UTF-8 bytes, 195 169, together; supplying just one would produce a replacement character instead.
Decimal to character reference
| Decimal | Character | Note |
|---|---|---|
| 10 | line feed | Newline control byte |
| 32 | space | First printable |
| 65 | A | Uppercase A to Z, 65 to 90 |
| 97 | a | Lowercase a to z, 97 to 122 |
| 195 169 | accented e | Two bytes, decode together |
Common mistakes and pitfalls
- Splitting a multibyte character. Accented letters and emoji span several bytes. Drop or reorder one and you get a replacement character instead of the original.
- Numbers above 255. Each value is one byte, so anything over 255 is invalid, usually from two numbers running together or from pasting Unicode code points rather than UTF-8 bytes.
- Missing separators. The decoder needs a space, comma, or line break between numbers. Without separators it cannot tell where one byte ends.
- Feeding code points, not bytes. The euro sign is code point 8364 but decodes from the bytes 226 130 172. Supplying 8364 as a single value will not produce the euro sign.
- Assuming a single-byte encoding. The decoder reads UTF-8. Numbers produced under a different encoding such as Latin-1 may decode to different characters above 127.
- Stray non-numeric text. Letters or symbols mixed in with the numbers are not valid bytes and will break the decode or be ignored.
Frequently asked questions
What format should the decimal input be in?
Enter the byte values as numbers from 0 to 255 separated by spaces, for example 72 105 33 for Hi!. Each number is one UTF-8 byte. The decoder reads them in order, builds a byte array, and turns it back into text. Commas or line breaks between numbers also work as separators.
Why do I get garbled text or a replacement character?
Garbled output usually means the numbers are not a valid UTF-8 byte sequence, often because a multibyte character was split or numbers were dropped or reordered. A diamond question mark is the Unicode replacement character, shown when a byte cannot be decoded. Check that multibyte characters keep all their bytes together and in order.
How do multibyte characters work when decoding?
In UTF-8 an accented letter or emoji is encoded as two to four consecutive bytes. To decode correctly all of those bytes must be present and in the right sequence, for example 195 169 decodes to an accented e. Removing or rearranging any byte of the group breaks the character.
What if a number is larger than 255?
Every value must be a single byte from 0 to 255. A number above 255 is invalid input, usually caused by two values running together without a space or by pasting Unicode code points instead of UTF-8 bytes. Separate each byte with a space and keep them within range.
Is my input sent anywhere?
No. The decoding runs entirely in your browser using the TextDecoder API, so your numbers are never uploaded, logged, or stored. The page works offline once loaded, which keeps any private data on your device.
