this post was submitted on 27 Dec 2024
26 points (100.0% liked)

Programming

17705 readers
15 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 2 years ago
MODERATORS
 

After needing to find a small delimiter for my data format I started wondering if I could use 0x1E-0x1F?

They are part of the control codes so I thought they might do something weird?

https://en.wikipedia.org/wiki/C0_and_C1_control_codes#Field_separators

top 10 comments
sorted by: hot top controversial new old
[–] SpaceNoodle 28 points 6 days ago

1E and 1F were actually originally intended to be used as record and unit separators, respectively, so that's actually not a bad idea. The description for those fields in the article you linked even mentions that they're suited for use as field delimiters.

[–] [email protected] 18 points 6 days ago (1 children)

Generally a bad idea to use in-band signalling like that. They won't do anything weird but consider what happens if the actual data contains them.

[–] [email protected] 8 points 5 days ago* (last edited 5 days ago) (3 children)

consider what happens if the actual data contains them.

Then you'd escape them by using another character in front. But if their data format is ASCII text or is guaranteed not to have characters below ASCII 32 then using ASCII delimiters is fine.

[–] SpaceNoodle 10 points 5 days ago (2 children)

But who escapes the escape characters?

[–] [email protected] 9 points 5 days ago

It's escape characters all the way down

[–] [email protected] 1 points 5 days ago (1 children)
[–] SpaceNoodle 7 points 5 days ago

Use emoji as escape characters

[–] lurklurk 5 points 5 days ago* (last edited 5 days ago)

Then you can just use a conmon delimiter like comma or semicolon or something. It's better even as you're less likely to have something that seems to work until your exotic delimiter pops up in the data.

Better yet, use a commonly used data format like csv or json and don't build your own

[–] [email protected] 3 points 5 days ago

Indeed. Escape characters add a lot of additional complexity, footguns, and performance penalties.

[–] [email protected] 9 points 6 days ago

Depends on if you want your data format to be strict ascii. If you don’t care, then sure, why not?