OSX解析错误HexNumber格式

时间:2014-07-29 13:58:51

标签: c# macos parsing unity3d hex

我在尝试在osx机器上解析c#中的十六进制字符串时遇到了一个奇怪的问题。

以下是给我带来麻烦的一线:

string userID = SystemInfo.deviceUniqueIdentifier;
userID = Int64.Parse(userID, System.Globalization.NumberStyles.HexNumber).ToString();

初始字符串是这样的:XXX999X-XX99-9

我得到的错误如下:

FormatException: Input string was not in the correct format: Did not parse entire string. pos = 8 s.Length = 15

现在很明显,“ - ”是造成问题的原因。有办法避免这种情况吗?如何正确解析我的十六进制哈希?我这样做是为了生成唯一的用户ID,所以我不知道我是否可以简单地替换不允许的符号或其他东西。此问题似乎只是OSX设备上的问题。

1 个答案:

答案 0 :(得分:0)

您是否尝试删除" - "?

string userID = SystemInfo.deviceUniqueIdentifier.Replace("-", string.Empty);
userID = Int64.Parse(userID, System.Globalization.NumberStyles.HexNumber).ToString();