今天又有朋友问起有关进制转换的问题,十进制怎么转换成二进制,十进制怎么转换成八进制,十进制怎么转换成十六进制。其实,就程序而言,使用什么进制都是一样的,因为在计算机中,最终还是使用二进制进行存放,问了老半天,才明白,他要的是二进制、八进制、十六进制的字符串表示方式。
这么一说,就很简单了,使用System.Convert.ToString()就可以转换了:
比如说,将1000转换成二进制:System.Convert.ToString(1000,2)
将1000转换成八进制:System.Convert.ToString(1000,8)
将1000转换成十六进制:System.Convert.ToString(1000,16)
除此之外,还可以使用ToString()方法来显示不同的格式,如以下代码所示。
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace secretary.manage
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
int i = 1000000;
Response.Write("十进制的数字:" + i.ToString() + "<br>");
Response.Write("货币格式:" + i.ToString("c") + "<br>");
Response.Write("十进制格式:" + i.ToString("d") + "<br>");
Response.Write("科学计数格式:" + i.ToString("e") + "<br>");
Response.Write("固定点格式:" + i.ToString("f") + "<br>");
Response.Write("常规格式:" + i.ToString("g") + "<br>");
Response.Write("数字格式:" + i.ToString("n") + "<br>");
Response.Write("十六进制为:" + i.ToString("x") + "<br>");
Response.Write("二进制为:" + System.Convert.ToString(i, 2) + "<br>");
Response.Write("八进制为:" + System.Convert.ToString(i, 8) + "<br>");
}
}
}
使用System.Convert.ToString()可以很方便地在二进制、八进制、十进制、十六进制之间进行转换,如以下代码所示。
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace secretary.manage
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//十进制
int i = 100;
//转换成二进制的字符串表示方式
string str2 = System.Convert.ToString(i, 2);
//转换成八进制的字符串表示方式
string str8 = System.Convert.ToString(i, 8);
//转换成二进制的字符串表示方式
string str16 = System.Convert.ToString(i, 16);
Response.Write("十进制的数字:" + i.ToString() + "<br>");
Response.Write("二进制为:" + str2 + "<br>");
Response.Write("八进制为:" + str8 + "<br>");
Response.Write("十六进制为:" + str16 + "<br><br>");
//如果要将二进制转换成十六进制,可以先将其转换成十进制,再转成十六进制
str2 = "101010";
Response.Write("二进制的数字:" + str2 + "<br>");
//转换成十进制
i = System.Convert.ToInt32(str2, 2);
Response.Write("转换成十进制:" + i.ToString() + "<br>");
//再转换成十六进制
Response.Write("转换成十六进制:" + System.Convert.ToString(i, 16) + "<br>");
}
}
}


浙公网安备 33010602011771号