C# - 将十六进制值字符串转换为十六进制
这可能听起来很奇怪,但我的问题是我有一个来自文本文件的十六进制值的文本字符串,如下所示:
"0x0f, 0x40, 0xff, ...."
我已将它们存储在由分隔符分隔的数组中,但我现在需要做的是拥有一个字节数组十六进制的内容:
stringArray[0] = "0x0f";
byteArray[0] = 0x0f;
我该如何执行此操作(用户可以加载文本文件,所以我不知道这些值是什么),是否可以使用某种算术?
This might sound odd, but my issue is that I have a text string of hex values from a text file, like so:
"0x0f, 0x40, 0xff, ...."
I have stored them in an array split by the delimiters, but what I now need to do is have a byte array of what thay are in hex:
stringArray[0] = "0x0f";
byteArray[0] = 0x0f;
How do I do this (the user can load the text file, so I don't know what the values are), is there some sort of arithmetic I can use?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
非奇数十六进制字符串是正确的。
检查你得到这个字符串的来源。
这是因为由于字符数限制而导致字符串被截断。
如果字符串是图像存储在数据库中,然后使用不使用任何工具的程序检索它
我在.net和MSSQL以及使用webservice和Java客户端时遇到了同样的问题
Non of Odd hex string is correct.
Check source from you get this string .
It is because of truncation of string due to limit no of characters.
If String is image is stored in database then retrieve it using program not using any tools
I was having same problem with .net and MSSQL and by using webservice and Java Client
如果您的字符串格式正确,您可以使用以下代码创建数组(如果输入格式错误,将引发异常):
If your string is in the correct format you can create your array using this code (will throw exceptions if the input is badly formatted):
您只需解析每个字符串即可。因为每个都已经只有一个值,所以您可以这样做:
其中 s 是您要解析的字符串,b 是结果值。
You just have to parse each string. Because each one is already only one value, you can do this:
where s is the string you want to parse, and b is the resulting value.