1

A table in postgresql where one of columns is uuid as BYTEA is being exported to tsv.

For example uuid was: 625c3430-34d0-43eb-b85d-e3bd1d9f82e1 and exported value is: b\\404\320C\353\270]\343\275\035\237\202\341.

What is the algorithm behind converting uuid::text and for the reverse functionality also, from text to uuid. I have to read this tsv, decode uuid from its text representation and "do additional stuff" depending on decoded uuid.

Are there some libraries for this in Java or do I need to write my own decoder for it? If I have to write my own decoder any hints on algorithm for it are welcome.

3

1 Answer 1

1

Convert your initial uuid to byte array. Check every element of byte array and if the value is:

0 => "\000"

39 => "\047"

or '''' (single quote symbol)

92 => "\" or "\134" (backslash)

31 < value < 127 => character from value

any other is "\xxx" octal value.

And you have your "text representation" uuid.

To get uuid from "text representation" just go trough the steps in reverse.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.