我如何解决此代码以消除错误? [关闭]

问题描述 投票:0回答:2

我想将二进制转换为十进制,然后从十进制转换为八进制。所以我写了这个,但是我正在得到

无法从'int'转换为'System.IFormatProvider'错误

我的代码

  long zahl = 1234;
  long zahl1;
  zahl1= Convert.ToInt32(zahl, 2); //the error
c# winforms binary decimal octal
2个回答
0
投票

这里没有方法重载来执行您要问的事情:Convert.ToInt32具有以下重载:enter image description herehttps://docs.microsoft.com/en-us/dotnet/api/system.convert.toint32?view=netcore-3.1


0
投票

由于变量“ 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();
© www.soinside.com 2019 - 2024. All rights reserved.