我想将二进制转换为十进制,然后从十进制转换为八进制。所以我写了这个,但是我正在得到
无法从'int'转换为'System.IFormatProvider'错误
我的代码
long zahl = 1234;
long zahl1;
zahl1= Convert.ToInt32(zahl, 2); //the error
这里没有方法重载来执行您要问的事情:Convert.ToInt32具有以下重载:https://docs.microsoft.com/en-us/dotnet/api/system.convert.toint32?view=netcore-3.1
由于变量“ zahl”很长,您无法直接将其转换为int32,因为“ zahl1”的类型很长。因此,为了这样做,您必须将zahl1设置为int类型:
long zahl = 1234;
int zahl1;
zahl1= Convert.ToInt32(zahl);
如果您想让zahl1与zahl具有相同的值,您也可以直接键入,因为它们具有相同的类型,因此无需转换它:
long zahl = 1234;
long zahl1 = zahl;
用于将其从二进制转换为十进制,您将像这样:
zahl1 = Convert.ToInt64(zahl1.toString(), 2).ToString();