我在尝试在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设备上的问题。
答案 0 :(得分:0)
您是否尝试删除" - "?
string userID = SystemInfo.deviceUniqueIdentifier.Replace("-", string.Empty);
userID = Int64.Parse(userID, System.Globalization.NumberStyles.HexNumber).ToString();