About the String to Binary
Encoding text as binary always begins with a decision that is easy to skip: are you writing bytes or characters? UTF-8 byte mode is the honest answer for anything that will travel over a wire or sit in a file, and it is the default here. In that mode a plain English letter takes one group of eight bits, an accented letter takes two, and an emoji takes four, which is exactly what a hex editor would show you.
Code point mode instead gives one group per character no matter how wide it is, padded to sixteen bits and growing to twenty four or thirty two when a character needs it. That view is easier to read when the point of the exercise is teaching rather than transmission, because the group boundaries match the letters on screen.
Padding is on by default because a byte that starts with a zero looks wrong without it, and unpadded output cannot be decoded again without the separators. Turning padding off is only sensible when you want the raw minimum number of bits for a diagram. The separator dropdown adds a space, a comma, a line break, or nothing at all between groups. Feed the result back through Binary to String to check it round trips, or use String to Hex when a shorter notation would be easier to read.
How to use
- Type or paste the text to encode.
- Choose UTF-8 bytes for real data or Whole code points for a per character view.
- Pick the separator, then copy or download the bits.
Common questions
- Why does one emoji produce four groups?
- In UTF-8 byte mode an emoji is four bytes, so it shows as four groups of eight bits.
- Should I leave padding on?
- Yes for anything you plan to decode later. Without padding a byte like 1010 loses its leading zeros and cannot be read back reliably.
- Can I get binary with no spaces?
- Set the separator to Nothing. Keep padding on so the groups remain a fixed eight digits wide.
- Does it handle line breaks in the input?
- Yes. A line break is encoded as the byte 00001010 like any other character.