【发布时间】:2015-09-01 03:07:26
【问题描述】:
我正在尝试从包含 string (Hexadecimal) 的文件中创建 List<byte>。
定义是:
List<byte> myArray = new List<byte>();
如果我想直接添加我的信息,我会使用这样的东西:
myArray.Add(0xb8);
注意:没有任何引号或双引号。
问题是当我想从文件中做同样的事情时!
现在我想知道0xb8的类型是什么所以我使用以下代码:
0xc3.GetType().ToString()
结果是:System.Int32 !!!!
但是当我从文件中读取字符串并使用这样的代码时,它会给我以下错误。
代码:
Line = "0xb8";
myArray.Add(Convert.ToInt32(Line));
错误:
Argument 1: cannot convert from 'int' to 'byte'
而且很清楚。因为myArray 的唯一重载只有byte 作为参数。
让事情变得如此复杂的原因是为什么当我在 myArray.Add(0xb8); 中添加 Int32 到 myArray 时它不会给我任何错误。
我觉得应该是字节的形式!也许吧!
为什么它没有给出任何错误以及如何完成这种情况(我的意思是从字符串添加字节到 myArray )?
【问题讨论】:
-
the result is : System.Int32 !!!!当然......一个数字。还能是什么?