如何使用Convert类的公共方法实现基本数据类型随意转换。

Convert类用于将一个基本数据类型转换为另一个基本数据类型,返回与指定类型的值等效的类型;受支持的基类型是Boolean、Char、SByte、Byte、Int16、Int32、Int64、UInt16、UInt32、UInt64、Single、Double、Decimal、DateTime和String。可根据不同的需要使用Convert类的公共方法实现不同数据类型的转换。所执行的实际转换操作分为以下3类:
(1)从某类型到它本身的转换只返回该类型,不实际执行任何转换。
(2)无法产生有意义的结果的转换引发InvalidCastException,不实际执行任何转换。下列转换会引发异常:从Char转换为Boolean、Single、Double、Decimal或DateTime,以及从这些类型转换为Char,还有从DateTime转换为除String之外的任何类型,以及从任何类型(String除外)转换为DateTime。
(3)任何基类型(上面描述的基类型除外)都可以与任何其他基类型进行相互转换。
Convert类常用公共方法及说明如表5.3所示。
表5.3                                               Convert类常用公共方法及说明
方 法 名 称
说    明
FromBase64CharArray
将Unicode字符数组的子集(将二进制数据编码为base 64数字)转换成等效的8位无符号整数数组。参数指定输入数组的子集以及要转换的元素数
FromBase64String
将指定的String(将二进制数据编码为base 64数字)转换成等效的8位无符号整数数组
GetHashCode
用作特定类型的哈希函数。GetHashCode适合在哈希算法和数据结构(如哈希表)中使用
ToBase64CharArray
将8位无符号整数数组的子集转换为用Base 64数字编码的Unicode字符数组的等价子集
ToBase64String
将8位无符号整数数组的值转换为它的等效String表示形式(使用base 64数字编码)
ToBoolean
将指定的值转换为等效的布尔值
ToByte
将指定的值转换为8位无符号整数
ToChar
将指定的值转换为Unicode字符
ToDateTime
将指定的值转换为DateTime
ToDecimal
将指定值转换为Decimal数字
ToDouble
将指定的值转换为双精度浮点数字
ToInt16
将指定的值转换为16位有符号整数
ToInt32
将指定的值转换为32位有符号整数
ToInt64
将指定的值转换为64位有符号整数
ToSByte
将指定的值转换为8位有符号整数
ToSingle
将指定的值转换为单精度浮点数字
ToString
将指定值转换为其等效的String表示形式
ToUInt16
将指定的值转换为16位无符号整数
ToUInt32
将指定的值转换为32位无符号整数
ToUInt64
将指定的值转换为64位无符号整数
主要代码如下:
      private void button1_Click(object sender, EventArgs e)
        {
            string str = "转换前的数据类型:/n";
            bool xBool = false;
            float xSingle = 4.0f;
            double xDouble = 5.0;
            decimal xDecimal = 6.0m;
            string xString = "7";
            char xChar = '8'; // '8' = hexadecimal 38 = decimal 56
            str += "bool类型:" + "值false /n";
            str += "float类型:" + "值4.0f /n";
            str += "double类型:" + "值5.0 /n";
            str += "decimal类型:" + "值6.0m /n";
            str += "string 类型:" + "值7 /n";
            str += "char类型:" + "值8 /n";
            string str1 = "转换后的数据类型:/n";
   str1 += "bool类型转换成ToInt64类型:" + Convert.ToInt64(xBool).ToString() + "/n";
   str1 += "float类型转换成ToInt64类型:" + Convert.ToInt64(xSingle).ToString() + "/n";
   str1 += "double类型转换成ToInt64类型:" + Convert.ToInt64(xDouble).ToString() + "/n";
   str1 += "decimal类型转换成ToInt64类型:" + Convert.ToInt64(xDecimal).ToString() + "/n";
   str1 += "string 类型转换成ToInt64类型:" + Convert.ToInt64(xString).ToString() + "/n";
    str1 += " char 类型转换成ToInt64类型:" + Convert.ToInt64(xChar).ToString() + "/n";
     MessageBox.Show(str+str1,"数据类型转换",MessageBoxButtons.OK,MessageBoxIcon.Information);
        }
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值