我使用的一个组件需要向其中提供XML。组件提供商没有提供任何文档或XML规范。我正在尝试使用组件中的示例XML通过反复尝试来生成XML。
这就是故事。这是我的问题。在XML中,他们使用了一些f_key = "b3f39bb9-3f8c-453a-bdb4-2486a887e39f-0000a008:000001e8"
Java给我的是:UUID.randomUUID().toString()
它生成以下格式的随机字符串:"22572e59-f7dc-404a-9c0c-78161e3a4df7"
任何线索,组件提供的f_key中的"0000a008:000001e8
"是什么意思[最多5个随机字符串同时匹配。组件提供的随机字符串中额外有第6个和第7个]?什么类型的UUID生成器会生成它?它看起来熟悉吗?
根据此代码
Regex guidRegEx = new Regex(@"^({{0,1}([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}}{0,1})$");
guidRegEx.IsMatch("b3f39bb9-3f8c-453a-bdb4-2486a887e39f-0000a008:000001e8");
这不是一个有效的guid,它是一个末尾有内容的有效guid。我猜他们在末尾加了一个时间戳。我以前见过时间戳设备的东西。
但这是最好的猜测。
我相信它只是由提供者生成的某种密钥。虽然我不知道密钥生成的规则(这是特定于应用程序的),但我将十六进制数字a008 1e8转换为十进制视图,发现它们之间的比率为83:40968/488=83
。所以,可能会尝试创建UUID并添加由两个十六进制格式的数字组成的后缀,使它们的比率为83。