C#中转换格式Double.Prase()和Convert.Dodouble()有区别吗c#
解决方案 »
- 密码
- C# 锁定某个软件自动输入内容可以做其他事情
- datagridview选中单元个更改背景颜色
- 针对程序集 'SqlServerTime' 的 ALTER ASSEMBLY 失败,因为程序集 'SqlServerTime' 未获授权(PERMISSION_
- 不显示删除回复显示所有回复显示星级回复显示得分回复 web service使用linq时返回错误:System.Data.Linq.Binary 无法序列化,
- 请问Web中怎么用像WinFrom的DialogResult+messagebox的功能?
- 试图读取服务器的excel文件,提示输入用户名和密码?
- DataView的问题,请路过的进来看看
- 靜態函數多了是不是會占用大量的內存啊?
- 第一次用C#写ASP.NET程序,就出错,我晕了,我的SQL SERVER是局域网中另一台电脑?请进,谢谢!
- 请教给TABLE 字段赋值
- 有关c#的oracle的连接封装问题
{
if (value == null)
{
return 0.0;
}
return double.Parse(value, CultureInfo.CurrentCulture);
}
parse会抛异常 而Convert会返回 0
Double.Parse 参数为 null 时,抛出异常。
Convert.ToDouble参数为 "" 时,抛出异常;
Double.Parse 参数为 "" 时,抛出异常。
Convert.ToDouble可以转换的类型较多;
Double.Parse 只能转换数字类型的字符串。
Double.TryParse 与 Double.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。最后一个参数为输出值,如果转换失败,输出值为 0.0。
附测试代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
try
{
//string a = "0.2";
//string a = null;
string a = "";
try
{
double d1 = Double.Parse(a);
}
catch (Exception err)
{
Console.WriteLine("d1转换出错:" + err.Message);
} try
{
double d2 = Convert.ToDouble(a);
}
catch (Exception err)
{
Console.WriteLine("d2转换出错:" + err.Message);
}
try
{
double d3;
Double.TryParse(a,out d3);
}
catch (Exception err)
{
Console.WriteLine("d3转换出错:" + err.Message);
}
}
finally
{
Console.ReadKey();
} }
}
}