System.Object
System.Convert
命名空间: System
程序集: mscorlib(在 mscorlib.dll 中)
public static class Convert
Convert 类型公开以下成员。
| 名称 | 说明 | ChangeType(Object, Type)返回一个指定类型的对象,该对象的值等效于指定的对象。ChangeType(Object, TypeCode)返回一个指定类型的对象,该对象的值等于指定的对象。ChangeType(Object, Type, IFormatProvider)返回一个指定类型的对象,该对象的值等于指定的对象。参数提供区域性特定的格式设置信息。ChangeType(Object, TypeCode, IFormatProvider)返回一个指定类型的对象,该对象的值等于指定的对象。参数提供区域性特定的格式设置信息。FromBase64CharArray将 Unicode 字符数组(它将二进制数据编码为 Base64 数字)的子集转换为等效的 8 位无符号整数数组。参数指定输入数组的子集以及要转换的元素数。FromBase64String将指定的字符串(它将二进制数据编码为 Base64 数字)转换为等效的 8 位无符号整数数组。GetTypeCode返回指定对象的 TypeCode。IsDBNull返回有关指定对象是否为 DBNull 类型的指示。ToBase64CharArray(Byte[], Int32, Int32, Char[], Int32)将 8 位无符号整数数组的子集转换为用 Base64 数字编码的 Unicode 字符数组的等价子集。参数将子集指定为输入和输出数组中的偏移量和输入数组中要转换的元素数。ToBase64CharArray(Byte[], Int32, Int32, Char[], Int32, Base64FormattingOptions)将 8 位无符号整数数组的子集转换为用 Base64 数字编码的 Unicode 字符数组的等价子集。参数指定作为输入和输出数组中偏移量的子集、输入数组中要转换的元素数以及是否在输出数组中插入分行符。ToBase64String(Byte[])将 8 位无符号整数的数组转换为其用 Base64 数字编码的等效字符串表示形式。ToBase64String(Byte[], Base64FormattingOptions)将 8 位无符号整数的数组转换为其用 Base64 数字编码的等效字符串表示形式。参数指定是否在返回值中插入分行符。ToBase64String(Byte[], Int32, Int32)将 8 位无符号整数数组的子集转换为其用 Base64 数字编码的等效字符串表示形式。参数将子集指定为输入数组中的偏移量和数组中要转换的元素数。ToBase64String(Byte[], Int32, Int32, Base64FormattingOptions)将 8 位无符号整数数组的子集转换为其用 Base64 数字编码的等效字符串表示形式。参数指定作为输入数组中偏移量的子集、数组中要转换的元素数以及是否在返回值中插入分行符。ToBoolean(Boolean)返回指定的布尔值;不执行任何实际的转换。ToBoolean(Byte)将指定的 8 位无符号整数的值转换为等效的布尔值。ToBoolean(Char)调用此方法始终引发 InvalidCastException。ToBoolean(DateTime)调用此方法始终引发 InvalidCastException。ToBoolean(Decimal)将指定的十进制数字的值转换为等效的布尔值。ToBoolean(Double)将指定的双精度浮点数的值转换为等效的布尔值。ToBoolean(Int16)将指定的 16 位带符号整数的值转换为等效的布尔值。ToBoolean(Int32)将指定的 32 位带符号整数的值转换为等效的布尔值。ToBoolean(Int64)将指定的 64 位带符号整数的值转换为等效的布尔值。ToBoolean(Object)将指定对象的值转换为等效的布尔值。ToBoolean(SByte)将指定的 8 位带符号整数的值转换为等效的布尔值。ToBoolean(Single)将指定的单精度浮点数的值转换为等效的布尔值。ToBoolean(String)将逻辑值的指定字符串表示形式转换为其等效的布尔值。ToBoolean(UInt16)将指定的 16 位无符号整数的值转换为等效的布尔值。ToBoolean(UInt32)将指定的 32 位无符号整数的值转换为等效的布尔值。ToBoolean(UInt64)将指定的 64 位无符号整数的值转换为等效的布尔值。ToBoolean(Object, IFormatProvider)使用指定的区域性特定格式设置信息,将指定对象的值转换为等效的布尔值。ToBoolean(String, IFormatProvider)使用指定的区域性特定格式设置信息,将逻辑值的指定字符串表示形式转换为其等效的布尔值。ToByte(Boolean)将指定的布尔值转换为等效的 8 位无符号整数。ToByte(Byte)返回指定的 8 位无符号整数;不执行任何实际的转换。ToByte(Char)将指定 Unicode 字符的值转换为等效的 8 位无符号整数。ToByte(DateTime)调用此方法始终引发 InvalidCastException。ToByte(Decimal)将指定的十进制数的值转换为等效的 8 位无符号整数。ToByte(Double)将指定的双精度浮点数的值转换为等效的 8 位无符号整数。ToByte(Int16)将指定的 16 位带符号整数的值转换为等效的 8 位无符号整数。ToByte(Int32)将指定的 32 位带符号整数的值转换为等效的 8 位无符号整数。ToByte(Int64)将指定的 64 位带符号整数的值转换为等效的 8 位无符号整数。ToByte(Object)将指定对象的值转换为 8 位无符号整数。ToByte(SByte)将指定的 8 位带符号整数的值转换为等效的 8 位无符号整数。ToByte(Single)将指定的单精度浮点数的值转换为等效的 8 位无符号整数。ToByte(String)将数字的指定字符串表示形式转换为等效的 8 位无符号整数。ToByte(UInt16)将指定的 16 位无符号整数的值转换为等效的 8 位无符号整数。ToByte(UInt32)将指定的 32 位无符号整数的值转换为等效的 8 位无符号整数。ToByte(UInt64)将指定的 64 位无符号整数的值转换为等效的 8 位无符号整数。ToByte(Object, IFormatProvider)使用指定的区域性特定格式设置信息,将指定对象的值转换为 8 位无符号整数。ToByte(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 8 位无符号整数。ToByte(String, Int32)将指定基的数字的字符串表示形式转换为等效的 8 位无符号整数。ToChar(Boolean)调用此方法始终引发 InvalidCastException。ToChar(Byte)将指定的 8 位无符号整数的值转换为其等效的 Unicode 字符。ToChar(Char)返回指定的 Unicode 字符值;不执行任何实际的转换。ToChar(DateTime)调用此方法始终引发 InvalidCastException。ToChar(Decimal)调用此方法始终引发 InvalidCastException。ToChar(Double)调用此方法始终引发 InvalidCastException。ToChar(Int16)将指定的 16 位带符号整数的值转换为其等效的 Unicode 字符。ToChar(Int32)将指定的 32 位带符号整数的值转换为其等效的 Unicode 字符。ToChar(Int64)将指定的 64 位带符号整数的值转换为其等效的 Unicode 字符。ToChar(Object)将指定对象的值转换为 Unicode 字符。ToChar(SByte)将指定的 8 位带符号整数的值转换为其等效的 Unicode 字符。ToChar(Single)调用此方法始终引发 InvalidCastException。ToChar(String)将指定字符串的第一个字符转换为 Unicode 字符。ToChar(UInt16)将指定的 16 位无符号整数的值转换为其等效的 Unicode 字符。ToChar(UInt32)将指定的 32 位无符号整数的值转换为其等效的 Unicode 字符。ToChar(UInt64)将指定的 64 位无符号整数的值转换为其等效的 Unicode 字符。ToChar(Object, IFormatProvider)使用指定的区域性特定格式设置信息将指定对象的值转换为其等效的 Unicode 字符。ToChar(String, IFormatProvider)使用指定的区域性特定格式设置信息,将指定字符串的第一个字符转换为 Unicode 字符。ToDateTime(Boolean)调用此方法始终引发 InvalidCastException。ToDateTime(Byte)调用此方法始终引发 InvalidCastException。ToDateTime(Char)调用此方法始终引发 InvalidCastException。ToDateTime(DateTime)返回指定的 DateTime 对象;不执行任何实际的转换。ToDateTime(Decimal)调用此方法始终引发 InvalidCastException。ToDateTime(Double)调用此方法始终引发 InvalidCastException。ToDateTime(Int16)调用此方法始终引发 InvalidCastException。ToDateTime(Int32)调用此方法始终引发 InvalidCastException。ToDateTime(Int64)调用此方法始终引发 InvalidCastException。ToDateTime(Object)将指定对象的值转换为 DateTime 对象。ToDateTime(SByte)调用此方法始终引发 InvalidCastException。ToDateTime(Single)调用此方法始终引发 InvalidCastException。ToDateTime(String)将日期和时间的指定字符串表示形式转换为等效的日期和时间值。ToDateTime(UInt16)调用此方法始终引发 InvalidCastException。ToDateTime(UInt32)调用此方法始终引发 InvalidCastException。ToDateTime(UInt64)调用此方法始终引发 InvalidCastException。ToDateTime(Object, IFormatProvider)使用指定的区域性特定格式设置信息,将指定对象的值转换为 DateTime 对象。ToDateTime(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的日期和时间。ToDecimal(Boolean)将指定的布尔值转换为等效的十进制数。ToDecimal(Byte)将指定的 8 位无符号整数的值转换为等效的十进制数。ToDecimal(Char)调用此方法始终引发 InvalidCastException。ToDecimal(DateTime)调用此方法始终引发 InvalidCastException。ToDecimal(Decimal)返回指定的十进制数;不执行任何实际的转换。ToDecimal(Double)将指定的双精度浮点数的值转换为等效的十进制数。ToDecimal(Int16)将指定的 16 位带符号整数的值转换为等效的十进制数。ToDecimal(Int32)将指定的 32 位带符号整数的值转换为等效的十进制数。ToDecimal(Int64)将指定的 64 位带符号整数的值转换为等效的十进制数。ToDecimal(Object)将指定对象的值转换为等效的十进制数。ToDecimal(SByte)将指定的 8 位带符号整数的值转换为等效的十进制数。ToDecimal(Single)将指定的单精度浮点数的值转换为等效的十进制数。ToDecimal(String)将数字的指定字符串表示形式转换为等效的十进制数。ToDecimal(UInt16)将指定的 16 位无符号整数的值转换为等效的十进制数。ToDecimal(UInt32)将指定的 32 位无符号整数的值转换为等效的十进制数。ToDecimal(UInt64)将指定的 64 位无符号整数的值转换为等效的十进制数。ToDecimal(Object, IFormatProvider)使用指定的区域性特定格式设置信息,将指定对象的值转换为等效的十进制数。ToDecimal(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的十进制数。ToDouble(Boolean)将指定的布尔值转换为等效的双精度浮点数。ToDouble(Byte)将指定的 8 位无符号整数的值转换为等效的双精度浮点数。ToDouble(Char)调用此方法始终引发 InvalidCastException。ToDouble(DateTime)调用此方法始终引发 InvalidCastException。ToDouble(Decimal)将指定的十进制数的值转换为等效的双精度浮点数。ToDouble(Double)返回指定的双精度浮点数;不执行任何实际的转换。ToDouble(Int16)将指定的 16 位带符号整数的值转换为等效的双精度浮点数。ToDouble(Int32)将指定的 32 位带符号整数的值转换为等效的双精度浮点数。ToDouble(Int64)将指定的 64 位带符号整数的值转换为等效的双精度浮点数。ToDouble(Object)将指定对象的值转换为双精度浮点数。ToDouble(SByte)将指定的 8 位带符号整数的值转换为等效的双精度浮点数。ToDouble(Single)将指定的单精度浮点数的值转换为等效的双精度浮点数。ToDouble(String)将数字的指定字符串表示形式转换为等效的双精度浮点数。ToDouble(UInt16)将指定的 16 位无符号整数的值转换为等效的双精度浮点数。ToDouble(UInt32)将指定的 32 位无符号整数的值转换为等效的双精度浮点数。ToDouble(UInt64)将指定的 64 位无符号整数的值转换为等效的双精度浮点数。ToDouble(Object, IFormatProvider)使用指定的区域性特定格式设置信息,将指定对象的值转换为双精度浮点数。ToDouble(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的双精度浮点数。ToInt16(Boolean)将指定的布尔值转换为等效的 16 位带符号整数。ToInt16(Byte)将指定的 8 位无符号整数的值转换为等效的 16 位带符号整数。ToInt16(Char)将指定的 Unicode 字符的值转换为等效的 16 位带符号整数。ToInt16(DateTime)调用此方法始终引发 InvalidCastException。ToInt16(Decimal)将指定的十进制数的值转换为等效的 16 位带符号整数。ToInt16(Double)将指定的双精度浮点数的值转换为等效的 16 位带符号整数。ToInt16(Int16)返回指定的 16 位带符号整数;不执行任何实际的转换。ToInt16(Int32)将指定的 32 位带符号整数的值转换为等效的 16 位带符号整数。ToInt16(Int64)将指定的 64 位带符号整数的值转换为等效的 16 位带符号整数。ToInt16(Object)将指定对象的值转换为 16 位带符号整数。ToInt16(SByte)将指定的 8 位带符号整数的值转换为等效的 16 位带符号整数。ToInt16(Single)将指定的单精度浮点数的值转换为等效的 16 位带符号整数。ToInt16(String)将数字的指定字符串表示形式转换为等效的 16 位带符号整数。ToInt16(UInt16)将指定的 16 位无符号整数的值转换为等效的 16 位带符号整数。ToInt16(UInt32)将指定的 32 位无符号整数的值转换为等效的 16 位带符号整数。ToInt16(UInt64)将指定的 64 位无符号整数的值转换为等效的 16 位带符号整数。ToInt16(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 16 位带符号整数。ToInt16(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 16 位带符号整数。ToInt16(String, Int32)将指定基的数字的字符串表示形式转换为等效的 16 位带符号整数。ToInt32(Boolean)将指定的布尔值转换为等效的 32 位带符号整数。ToInt32(Byte)将指定的 8 位无符号整数的值转换为等效的 32 位带符号整数。ToInt32(Char)将指定的 Unicode 字符的值转换为等效的 32 位带符号整数。ToInt32(DateTime)调用此方法始终引发 InvalidCastException。ToInt32(Decimal)将指定的十进制数的值转换为等效的 32 位带符号整数。ToInt32(Double)将指定的双精度浮点数的值转换为等效的 32 位带符号整数。ToInt32(Int16)将指定的 16 位带符号整数的值转换为等效的 32 位带符号整数。ToInt32(Int32)返回指定的 32 位带符号整数;不执行任何实际的转换。ToInt32(Int64)将指定的 64 位带符号整数的值转换为等效的 32 位带符号整数。ToInt32(Object)将指定对象的值转换为 32 位带符号整数。ToInt32(SByte)将指定的 8 位带符号整数的值转换为等效的 32 位带符号整数。ToInt32(Single)将指定的单精度浮点数的值转换为等效的 32 位带符号整数。ToInt32(String)将数字的指定字符串表示形式转换为等效的 32 位带符号整数。ToInt32(UInt16)将指定的 16 位无符号整数的值转换为等效的 32 位带符号整数。ToInt32(UInt32)将指定的 32 位无符号整数的值转换为等效的 32 位带符号整数。ToInt32(UInt64)将指定的 64 位无符号整数的值转换为等效的 32 位带符号整数。ToInt32(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 32 位带符号整数。ToInt32(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 32 位带符号整数。ToInt32(String, Int32)将指定基的数字的字符串表示形式转换为等效的 32 位带符号整数。ToInt64(Boolean)将指定的布尔值转换为等效的 64 位带符号整数。ToInt64(Byte)将指定的 8 位无符号整数的值转换为等效的 64 位带符号整数。ToInt64(Char)将指定的 Unicode 字符的值转换为等效的 64 位带符号整数。ToInt64(DateTime)调用此方法始终引发 InvalidCastException。ToInt64(Decimal)将指定的十进制数的值转换为等效的 64 位带符号整数。ToInt64(Double)将指定的双精度浮点数的值转换为等效的 64 位带符号整数。ToInt64(Int16)将指定的 16 位带符号整数的值转换为等效的 64 位带符号整数。ToInt64(Int32)将指定的 32 位带符号整数的值转换为等效的 64 位带符号整数。ToInt64(Int64)返回指定的 64 位带符号整数;不执行任何实际的转换。ToInt64(Object)将指定对象的值转换为 64 位带符号整数。ToInt64(SByte)将指定的 8 位带符号整数的值转换为等效的 64 位带符号整数。ToInt64(Single)将指定的单精度浮点数的值转换为等效的 64 位带符号整数。ToInt64(String)将数字的指定字符串表示形式转换为等效的 64 位带符号整数。ToInt64(UInt16)将指定的 16 位无符号整数的值转换为等效的 64 位带符号整数。ToInt64(UInt32)将指定的 32 位无符号整数的值转换为等效的 64 位带符号整数。ToInt64(UInt64)将指定的 64 位无符号整数的值转换为等效的 64 位带符号整数。ToInt64(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 64 位带符号整数。ToInt64(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 64 位带符号整数。ToInt64(String, Int32)将指定基的数字的字符串表示形式转换为等效的 64 位带符号整数。ToSByte(Boolean)将指定的布尔值转换为等效的 8 位带符号整数。ToSByte(Byte)将指定的 8 位无符号整数的值转换为等效的 8 位带符号整数。ToSByte(Char)将指定的 Unicode 字符的值转换为等效的 8 位带符号整数。ToSByte(DateTime)调用此方法始终引发 InvalidCastException。ToSByte(Decimal)将指定的十进制数的值转换为等效的 8 位带符号整数。ToSByte(Double)将指定的双精度浮点数的值转换为等效的 8 位带符号整数。ToSByte(Int16)将指定的 16 位带符号整数的值转换为等效的 8 位带符号整数。ToSByte(Int32)将指定的 32 位带符号整数的值转换为等效的 8 位带符号整数。ToSByte(Int64)将指定的 64 位带符号整数的值转换为等效的 8 位带符号整数。ToSByte(Object)将指定对象的值转换为 8 位带符号整数。ToSByte(SByte)返回指定的 8 位带符号整数;不执行任何实际的转换。ToSByte(Single)将指定的单精度浮点数的值转换为等效的 8 位带符号整数。ToSByte(String)将数字的指定字符串表示形式转换为等效的 8 位带符号整数。ToSByte(UInt16)将指定的 16 位无符号整数的值转换为等效的 8 位带符号整数。ToSByte(UInt32)将指定的 32 位无符号整数的值转换为等效的 8 位带符号整数。ToSByte(UInt64)将指定的 64 位无符号整数的值转换为等效的 8 位带符号整数。ToSByte(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 8 位带符号整数。ToSByte(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 8 位带符号整数。ToSByte(String, Int32)将指定基的数字的字符串表示形式转换为等效的 8 位带符号整数。ToSingle(Boolean)将指定的布尔值转换为等效的单精度浮点数。ToSingle(Byte)将指定的 8 位无符号整数的值转换为等效的单精度浮点数。ToSingle(Char)调用此方法始终引发 InvalidCastException。ToSingle(DateTime)调用此方法始终引发 InvalidCastException。ToSingle(Decimal)将指定的十进制数的值转换为等效的单精度浮点数。ToSingle(Double)将指定的双精度浮点数的值转换为等效的单精度浮点数。ToSingle(Int16)将指定的 16 位带符号整数的值转换为等效的单精度浮点数。ToSingle(Int32)将指定的 32 位带符号整数的值转换为等效的单精度浮点数。ToSingle(Int64)将指定的 64 位带符号整数的值转换为等效的单精度浮点数。ToSingle(Object)将指定对象的值转换为单精度浮点数。ToSingle(SByte)将指定的 8 位带符号整数的值转换为等效的单精度浮点数。ToSingle(Single)返回指定的单精度浮点数;不执行任何实际的转换。ToSingle(String)将数字的指定字符串表示形式转换为等效的单精度浮点数。ToSingle(UInt16)将指定的 16 位无符号整数的值转换为等效的单精度浮点数。ToSingle(UInt32)将指定的 32 位无符号整数的值转换为等效的单精度浮点数。ToSingle(UInt64)将指定的 64 位无符号整数的值转换为等效的单精度浮点数。ToSingle(Object, IFormatProvider)使用指定的区域性特定格式设置信息,将指定对象的值转换为单精度浮点数。ToSingle(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的单精度浮点数。ToString(Boolean)将指定的布尔值转换为其等效的字符串表示形式。ToString(Byte)将指定的 8 位无符号整数的值转换为其等效的字符串表示形式。ToString(Char)将指定的 Unicode 字符的值转换为其等效的字符串表示形式。ToString(DateTime)将指定的 DateTime 的值转换为其等效的字符串表示形式。ToString(Decimal)将指定的十进制数的值转换为其等效的字符串表示形式。ToString(Double)将指定的双精度浮点数的值转换其等效的字符串表示形式。ToString(Int16)将指定的 16 位带符号整数的值转换为其等效的字符串表示形式。ToString(Int32)将指定的 32 位带符号整数的值转换为其等效的字符串表示形式。ToString(Int64)将指定的 64 位带符号整数的值转换为其等效的字符串表示形式。ToString(Object)将指定对象的值转换为其等效的字符串表示形式。ToString(SByte)将指定的 8 位带符号整数的值转换为其等效的字符串表示形式。ToString(Single)将指定的单精度浮点数的值转换其等效的字符串表示形式。ToString(String)返回指定的字符串实例;不执行任何实际转换。ToString(UInt16)将指定的 16 位无符号整数的值转换为其等效的字符串表示形式。ToString(UInt32)将指定的 32 位无符号整数的值转换为其等效的字符串表示形式。ToString(UInt64)将指定的 64 位无符号整数的值转换为其等效的字符串表示形式。ToString(Boolean, IFormatProvider)将指定的布尔值转换为其等效的字符串表示形式。ToString(Byte, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 8 位无符号整数的值转换为其等效的字符串表示形式。ToString(Byte, Int32)将 8 位无符号整数的值转换为其等效的指定基数的字符串表示形式。ToString(Char, IFormatProvider)使用指定的区域性特定格式设置信息将指定的 Unicode 字符的值转换为其等效的字符串表示形式。ToString(DateTime, IFormatProvider)使用指定的区域性特定格式设置信息,将指定 DateTime 的值转换为其等效的字符串表示形式。ToString(Decimal, IFormatProvider)使用指定的区域性特定格式设置信息将指定的十进制数的值转换为其等效的字符串表示形式。ToString(Double, IFormatProvider)将指定的双精度浮点数的值转换其等效的字符串表示形式。ToString(Int16, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 16 位带符号整数的值转换为其等效的字符串表示形式。ToString(Int16, Int32)将 16 位带符号整数的值转换为其指定基的等效字符串表示形式。ToString(Int32, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 32 位带符号整数的值转换为其等效的字符串表示形式。ToString(Int32, Int32)将 32 位带符号整数的值转换为其指定基的等效字符串表示形式。ToString(Int64, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 64 位带符号整数的值转换为其等效的字符串表示形式。ToString(Int64, Int32)将 64 位带符号整数的值转换为其指定基的等效字符串表示形式。ToString(Object, IFormatProvider)使用指定的区域性特定格式设置信息将指定对象的值转换为其等效的字符串表示形式。ToString(SByte, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 8 位带符号整数的值转换为其等效的字符串表示形式。ToString(Single, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的单精度浮点数的值转换为其等效的字符串表示形式。ToString(String, IFormatProvider)返回指定的字符串实例;不执行任何实际转换。ToString(UInt16, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 16 位无符号整数的值转换为其等效的字符串表示形式。ToString(UInt32, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 32 位无符号整数的值转换为其等效的字符串表示形式。ToString(UInt64, IFormatProvider)使用指定的区域性特定格式设置信息,将指定的 64 位无符号整数的值转换为其等效的字符串表示形式。ToUInt16(Boolean)将指定的布尔值转换为等效的 16 位无符号整数。ToUInt16(Byte)将指定的 8 位无符号整数的值转换为等效的 16 位无符号整数。ToUInt16(Char)将指定的 Unicode 字符的值转换为等效的 16 位无符号整数。ToUInt16(DateTime)调用此方法始终引发 InvalidCastException。ToUInt16(Decimal)将指定的十进制数的值转换为等效的 16 位无符号整数。ToUInt16(Double)将指定的双精度浮点数的值转换为等效的 16 位无符号整数。ToUInt16(Int16)将指定的 16 位带符号整数的值转换为等效的 16 位无符号整数。ToUInt16(Int32)将指定的 32 位带符号整数的值转换为等效的 16 位无符号整数。ToUInt16(Int64)将指定的 64 位带符号整数的值转换为等效的 16 位无符号整数。ToUInt16(Object)将指定对象的值转换为 16 位无符号整数。ToUInt16(SByte)将指定的 8 位带符号整数的值转换为等效的 16 位无符号整数。ToUInt16(Single)将指定的单精度浮点数的值转换为等效的 16 位无符号整数。ToUInt16(String)将数字的指定字符串表示形式转换为等效的 16 位无符号整数。ToUInt16(UInt16)返回指定的 16 位无符号整数;不执行任何实际的转换。ToUInt16(UInt32)将指定的 32 位无符号整数的值转换为等效的 16 位无符号整数。ToUInt16(UInt64)将指定的 64 位无符号整数的值转换为等效的 16 位无符号整数。ToUInt16(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 16 位无符号整数。ToUInt16(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 16 位无符号整数。ToUInt16(String, Int32)将指定基的数字的字符串表示形式转换为等效的 16 位无符号整数。ToUInt32(Boolean)将指定的布尔值转换为等效的 32 位无符号整数。ToUInt32(Byte)将指定的 8 位无符号整数的值转换为等效的 32 位无符号整数。ToUInt32(Char)将指定的 Unicode 字符的值转换为等效的 32 位无符号整数。ToUInt32(DateTime)调用此方法始终引发 InvalidCastException。ToUInt32(Decimal)将指定的十进制数的值转换为等效的 32 位无符号整数。ToUInt32(Double)将指定的双精度浮点数的值转换为等效的 32 位无符号整数。ToUInt32(Int16)将指定的 16 位带符号整数的值转换为等效的 32 位无符号整数。ToUInt32(Int32)将指定的 32 位带符号整数的值转换为等效的 32 位无符号整数。ToUInt32(Int64)将指定的 64 位带符号整数的值转换为等效的 32 位无符号整数。ToUInt32(Object)将指定对象的值转换为 32 位无符号整数。ToUInt32(SByte)将指定的 8 位带符号整数的值转换为等效的 32 位无符号整数。ToUInt32(Single)将指定的单精度浮点数的值转换为等效的 32 位无符号整数。ToUInt32(String)将数字的指定字符串表示形式转换为等效的 32 位无符号整数。ToUInt32(UInt16)将指定的 16 位无符号整数的值转换为等效的 32 位无符号整数。ToUInt32(UInt32)返回指定的 32 位无符号整数;不执行任何实际的转换。ToUInt32(UInt64)将指定的 64 位无符号整数的值转换为等效的 32 位无符号整数。ToUInt32(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 32 位无符号整数。ToUInt32(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 32 位无符号整数。ToUInt32(String, Int32)将指定基的数字的字符串表示形式转换为等效的 32 位无符号整数。ToUInt64(Boolean)将指定的布尔值转换为等效的 64 位无符号整数。ToUInt64(Byte)将指定的 8 位无符号整数的值转换为等效的 64 位无符号整数。ToUInt64(Char)将指定的 Unicode 字符的值转换为等效的 64 位无符号整数。ToUInt64(DateTime)调用此方法始终引发 InvalidCastException。ToUInt64(Decimal)将指定的十进制数的值转换为等效的 64 位无符号整数。ToUInt64(Double)将指定的双精度浮点数的值转换为等效的 64 位无符号整数。ToUInt64(Int16)将指定的 16 位带符号整数的值转换为等效的 64 位无符号整数。ToUInt64(Int32)将指定的 32 位带符号整数的值转换为等效的 64 位无符号整数。ToUInt64(Int64)将指定的 64 位带符号整数的值转换为等效的 64 位无符号整数。ToUInt64(Object)将指定对象的值转换为 64 位无符号整数。ToUInt64(SByte)将指定的 8 位带符号整数的值转换为等效的 64 位无符号整数。ToUInt64(Single)将指定的单精度浮点数的值转换为等效的 64 位无符号整数。ToUInt64(String)将数字的指定字符串表示形式转换为等效的 64 位无符号整数。ToUInt64(UInt16)将指定的 16 位无符号整数的值转换为等效的 64 位无符号整数。ToUInt64(UInt32)将指定的 32 位无符号整数的值转换为等效的 64 位无符号整数。ToUInt64(UInt64)返回指定的 64 位无符号整数;不执行任何实际的转换。ToUInt64(Object, IFormatProvider)使用指定的区域性特定格式信息,将指定对象的值转换为 64 位无符号整数。ToUInt64(String, IFormatProvider)使用指定的区域性特定格式设置信息,将数字的指定字符串表示形式转换为等效的 64 位无符号整数。ToUInt64(String, Int32)将指定基的数字的字符串表示形式转换为等效的 64 位无符号整数。页首
Convert 类的静态方法用于支持 .NET Framework 中与基数据类型之间的转换。受支持的基类型是Boolean、Char、SByte、Byte、Int16、Int32、Int64、UInt16、UInt32、UInt64、Single、Double、Decimal、DateTime 和 String。
与基类型之间的转换
存在将每个基类型转换为每个其他基类型的转换方法。但是,根据运行时基类型和目标基类型的值,对特定转换方法的实际调用会产生五种结果之一。这五种结果如下:
无转换。当尝试将一个类型转换为其本身时(如使用 Int32 类型参数调用 Convert.ToInt32(Int32))会发生这种情况。在这种情况下,此方法只是返回原始类型实例。
一个 InvalidCastException。当不支持特定转换时会发生这种情况。以下转换会引发 InvalidCastException。
将 Char 转换为 Boolean、Single、Double、Decimal 或 DateTime。
将 Boolean、Single、Double、Decimal 或 DateTime 转换为 Char。
将 DateTime 转换为 String 以外的任何其他类型。
将 String 以外的任何其他类型转换为 DateTime。
FormatException 。当由于字符串格式不正确而导致将字符串值转换为任何其他基类型的尝试失败时,会发生该异常。以下转换会引发该异常:
要转换为 Boolean 值的字符串不等于 Boolean.TrueString 或 Boolean.FalseString。
要转换为 Char 值的字符串由多个字符组成。
要转换为任何数值类型的字符串没有被识别为有效数字。
要转换为 DateTime 的字符串没有被识别为有效日期和时间值。
转换成功。对于前面结果中未列出的两个不同基类型之间的转换,所有扩大转换和不会导致数据丢失的收缩转换都将成功,此方法将返回目标基类型的值。
一个 OverflowException。当收缩转换导致数据丢失时会发生这种情况。例如,尝试将值为 10000 的 Int32 实例转换为 Byte 类型会引发 OverflowException,因为 10000 超出了 Byte 数据类型的范围。
如果数字类型转换导致精度丢失(即某些最低有效位丢失),不引发异常。但是,如果结果超出了特定转换方法的返回值类型所能表示的范围,则将引发异常。
例如,当将 Double 转换为 Single 时,可能会发生精度丢失,但并不引发异常。但是,如果 Double 的值太大,无法由 Single 表示,则将引发溢出异常。
从自定义对象转换为基类型
除了支持基类型之间的转换外,Convert 方法还支持将任何自定义类型转换为任何基类型。为此,自定义类型必须实现 IConvertible 接口,该接口定义用于将实现类型转换为每个基类型的方法。特定类型不支持的转换会引发 InvalidCastException。
向 ChangeType 方法传递自定义类型作为其第一个参数时,或者在调用 Convert.ToType 方法(如 Convert.ToInt32(Object) 或Convert.ToDouble(Object, IFormatProvider))并向其传递自定义类型的实例作为其第一个参数时,Convert 方法反过来会调用自定义类型的IConvertible 实现以执行转换。有关更多信息,请参见 .NET Framework 中的类型转换。
区域性特定的格式设置信息
所有基类型转换方法和 ChangeType 方法都包括具有类型为 IFormatProvider 的参数的重载。例如,Convert.ToBoolean 方法具有下面两个重载:
Convert.ToBoolean(Object, IFormatProvider)
Convert.ToBoolean(String, IFormatProvider)
IFormatProvider 参数可以提供区域性特定的格式设置信息以帮助转换过程。但是,大多数基类型转换方法忽略了该参数。只有下列基类型转换方法使用该参数:
将值转换为数值类型的方法。 IFormatProvider 参数由具有类型为 String 和 IFormatProvider 的参数的重载使用。它也由具有类型为Object 和 IFormatProvider 的参数的重载使用(如果对象的运行时类型为 String)。
将值转换为日期和时间的方法。 IFormatProvider 参数由具有类型为 String 和 IFormatProvider 的参数的重载使用。它也由具有类型为 Object 和 IFormatProvider 的参数的重载使用(如果对象的运行时类型为 String)。
包含 IFormatProvider 参数并将数字值转换为字符串或将 DateTime 值转换为字符串的 Convert.ToString 重载。
但是,实现 IConvertible 的任何用户定义类型都可以使用 IFormatProvider 参数。
其他转换方法
有一组方法可支持字节数组与 String 或由 base 64 数字字符组成的 Unicode 字符数组之间的转换。表示为以 64 为基的数字的数据可以很容易地通过只能传输 7 位字符的数据信道进行传送。
下面的代码示例演示 Convert 类中的一些转换方法,包括 ToInt32、ToBoolean 和 ToString。
double dNumber = 23.15;try {// Returns 23int iNumber = System.Convert.ToInt32(dNumber);}catch (System.OverflowException) {System.Console.WriteLine("Overflow in double to int conversion.");}// Returns Truebool bNumber = System.Convert.ToBoolean(dNumber);// Returns "23.15"string strNumber = System.Convert.ToString(dNumber);try {// Returns '2'char chrNumber = System.Convert.ToChar(strNumber[0]);} catch (System.ArgumentNullException) {System.Console.WriteLine("String is null");}catch (System.FormatException) {System.Console.WriteLine("String length is greater than 1.");}// System.Console.ReadLine() returns a string and it// must be converted.int newInteger = 0;try {System.Console.WriteLine("Enter an integer:");newInteger = System.Convert.ToInt32(System.Console.ReadLine());}catch (System.ArgumentNullException) {System.Console.WriteLine("String is null.");}catch (System.FormatException) {System.Console.WriteLine("String does not consist of an " +"optional sign followed by a series of digits.");} catch (System.OverflowException) {System.Console.WriteLine("Overflow in string to int conversion.");}System.Console.WriteLine("Your integer as a double is {0}", System.Convert.ToDouble(newInteger));