OSX解析错误HexNumber格式
本文关键字:HexNumber 格式 错误 OSX | 更新日期: 2023-09-27 18:15:40
我目前在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设备上。
你试过删除"-"吗?
string userID = SystemInfo.deviceUniqueIdentifier.Replace("-", string.Empty);
userID = Int64.Parse(userID, System.Globalization.NumberStyles.HexNumber).ToString();