guide . tobytearray()是跨平台的

本文关键字:跨平台 tobytearray guide | 更新日期: 2023-09-27 18:07:08

我想在不支持Guid/uniqueidentifier数据类型的数据库中存储Guid,因此我使用. tobytearray()方法将Guid转换为字节数组。然而,这个方法以一种奇怪的方式转换值:

11223344-5566-7788-9900-AABBCCDDEEFF
will become
44, 33, 22, 11, 66, 55, 88, 77, 99, 00, AA, BB, CC, DD, EE, FF

据我所知,这是由于端序排序。

我想知道这个方法是否会在每个平台上返回相同的结果(86x硬件,64x硬件,Linux, Windows等),并且无论我在哪个平台上运行我的软件,字节顺序都不会发生变化。

guide . tobytearray()是跨平台的

对于您的问题:

我想知道这个方法是否会返回相同的结果每个平台(86x硬件,64x硬件,Linux, Windows等)

对于所有平台它将是相同的

但是,这个方法以一种奇怪的方式转换值:

ToByteArray返回的顺序将不同于字符串表示。

看到:Guid。ToByteArray方法

注意,返回的字节数组中的字节顺序为与Guid值的字符串表示形式不同的。订单开始的四字节组和接下来的两个二字节组是相反,而最后两个字节组和结束的顺序6字节组相同