求c#中TryParse的用法

intouti=0;decimal.TryParse(atable.Rows[i]["Price"],outouti);//报错这个为什么报错啊... int outi=0;
decimal.TryParse(atable.Rows[i]["Price"],out outi);//报错

这个为什么报错啊
展开
 我来答
freeeeeewind
2015-08-02 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1344万
展开全部

(1).Net Framework类库中,很多数据类型提供了TryParse静态方法用来将字符串转换成对应类型的数值,这些数据类型有int(Int32), uint(Uint32), double等等

(2)所有数据类型的TryParse的使用方式是一样的,如果转换成功TryParse返回true;否则返回false。

以int.TryParse为例

string s = "100";
int result;
if(int.TryParse(s, out result))
{
    Console.WriteLine(result);  //<--执行这句 
}
else
{
    Console.WriteLine("转换失败!");    
}

再如

string s = "abc123";   //TryParse无法将这个字符串转换成整型
int result;
if(int.TryParse(s, out result))
{
    Console.WriteLine(result);    
}
else
{
    Console.WriteLine("转换失败!");   //<--执行这句 
}

(3)TryParse与Parse方法的不同之处在于:TryParse方法在转换失败时不引发异常,可以省去异常捕获处理!

今天你去哪
2010-11-03 · TA获得超过604个赞
知道小有建树答主
回答量:513
采纳率:0%
帮助的人:251万
展开全部
有可能转换为整数的对象才能转换,表达式为真并且输出outi;否则,表达式为false。你的price是否带小数点?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pengjianbo820
2010-11-03 · 超过17用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:0
展开全部
int outi=0;
decimal.TryParse(atable.Rows[i]["Price"].ToString(),out outi);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
weiliming001
2010-11-03 · TA获得超过377个赞
知道小有建树答主
回答量:478
采纳率:0%
帮助的人:346万
展开全部
using System;
namespace baidu
{
class MainClass
{
public static void Main(string[] args)
{
decimal i = 0;
decimal.TryParse("123", out i);
Console.WriteLine(i);
Console.ReadLine();
}
}
}
//参数类型错
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式