【发布时间】:2021-10-23 10:55:12
【问题描述】:
如何将 JSON Guid 转换为 Oracle Raw(16) 字符串数据类型?
在 C# Net 中,它使用 ToByteArray()。
Java 8 中的等价物是什么?
以下网站将转换,但我需要底层代码。
目标转换:A0824186-1E9C-AE47-95E1-1431542C2133 到字符串 864182A09C1E47AE95E11431542C2133
https://robobunny.com/cgi-bin/guid
- 标准:
A0824186-1E9C-AE47-95E1-1431542C2133 - 括号内:
{A0824186-1E9C-AE47-95E1-1431542C2133} - Oracle RAW(16) 格式:
864182A09C1E47AE95E11431542C2133 - Oracle hextoraw
HEXTORAW('864182A09C1E47AE95E11431542C2133') - SQLServer 使用 Oracle 字节顺序:
0x864182A09C1E47AE95E11431542C2133
网络解决方案参考:Convert from Oracle's RAW(16) to .NET's GUID
更新:
有没有办法反转这个函数? ORACLE RAW in string format to Standard GUIDhttps://stackoverflow.com/a/37685066/15435022
另外,我看到了一些 Javascript 源代码,也许找到了转换成 Java 的方法
https://github.com/kanekotic/raw-guid-converter/blob/master/lib/guid-to-raw.js
const buffer = require('buffer/').Buffer,
transform = require('./helpers').transform,
patterns = require('./helpers').patterns
const convert = (raw) => {
const pattern = /([0-9A-Fa-f]{8})-([0-9A-Fa-f]{4})-([0-9A-Fa-f]{4})-([0-9A-Fa-f]{4})-([0-9A-Fa-f]{12})/i
let guid_parsed = transform(pattern, raw)
return `${guid_parsed[0]}${guid_parsed[1]}${guid_parsed[2]}${guid_parsed[3]}${guid_parsed[4]}`.toUpperCase()
}
module.exports = convert
【问题讨论】:
标签: java oracle spring-boot guid