C# 在C中将二进制数的字符串表示形式转换为int#

C# 在C中将二进制数的字符串表示形式转换为int#,c#,string,binary,type-conversion,C#,String,Binary,Type Conversion,我有一个由8个1和0组成的字符串,中间有空格,类似于“1001010”,我想将其转换为int。有没有一种简单的方法可以做到这一点?我觉得某种linq解析可以做到这一点,但我甚至不知道在找到字符后如何处理它们。您不需要任何linq。 Convert.ToInt*()采用可选的fromBase参数,该参数必须为2、8、10或16 Convert.ToInt32("1 0 0 1 1 0 1 0".Replace(" ", ""), 2) @SLaks答案的另一种选择(但仅用于解析十六进制)是 不过

我有一个由8个1和0组成的字符串,中间有空格,类似于“1001010”,我想将其转换为int。有没有一种简单的方法可以做到这一点?我觉得某种linq解析可以做到这一点,但我甚至不知道在找到字符后如何处理它们。

您不需要任何linq。
Convert.ToInt*()
采用可选的
fromBase
参数,该参数必须为2、8、10或16

Convert.ToInt32("1 0 0 1 1 0 1 0".Replace(" ", ""), 2)

@SLaks答案的另一种选择(但仅用于解析十六进制)是


不过,二进制没有等价物,因此his是一个更好的通用答案。

只是澄清一下,字符串
100 01 01 0
应该被解析为两个四位值:
1001
1010
。然后转换成十六进制。对吗?我错了。删除了之前的评论。这使得这是一个非常简单的问题哈。非常感谢!
Int32.Parse(hexString, System.Globalization.NumberStyles.HexNumber);