У своїй програмі я вставляю дані в базу даних, використовуючи код C, оскільки рядки, які я отримую з ненадійного джерела, я уникнув їх, використовуючи PQescapeByteaConn
бібліотеку libpq. Що працює чудово, тобто призводить до струнного формату Октет. Дивіться нижче приклад,
Рядок введення: \n\t\f\b\p\k\j\l\mestPrepared
Вихідна рядок: \\012\\011\\014\\010pkjlmestPrepared
Вихідний рядок вставляється в базу даних. Тепер я отримую ці дані з бази даних в коді Java, використовуючи JDBC. Як я можу повернути рядок до початкового значення?
Я подумав два можливі підходи,
- Змініть запит на пошук бази даних та передайте це поле будь-якій функції String manipulation of postgres, тобто яка може перетворити байт у текст.
- Робіть розшифровку в коді Java.
Я можу зрозуміти, що підхід 1 буде більш ефективним. Я спробував майже всі перераховані тут функції, але нічого не працює. Будь ласка, допоможіть!!
Я використовую версію 8.4 постгресів на машині Linux.
ResultSet.getBytes()
?