asp.net ToString格式大全与Convert.ToString区别 (1/2)
asp教程.net tostring格式大全与convert.tostring区别
通常object到string有四种方式:(假设有object obj)obj.tostring,convert.tostring,(string)obj,obj as string。
他们都能将object对象转换成string对象。我就讲讲他们的异同以及在实际中应该使用哪个。
前两个方法通常是由别的对象得到string对象,它们间的区别只表现在要转换的对象为null时,如果obj为null,调用obj.tostring方易做图导致nullreferenceexception异常,调用convert.tostring不会抛出异常而返回一个null。
用强制转换(string)obj要求obj的运行时类型必须是string。如果不是,就会抛出异常。用as方法则会相对平稳,当obj的运行时类型不是string时会返回null而不抛出异常。
所以在通常在我们需要得到某个对象的string表达形式时,我们应该使用tostring和convert.tostring,这时候你就得根据情形选一个,假如你能保证你的对象不为null,则两个差不多。如果有可能为null,你就应该用convert.tostring,如果你希望它为null的时候抛出异常,那么当然可以选择.tostring。
字符型转换为字符串
// c 货币
2.5.tostring("c"); // ¥2.50
// d 10进制数
25.tostring("d5"); // 25000
// e 科学型
25000.tostring("e"); // 2.500000e+005
// f 固定点
25.tostring("f2"); // 25.00
// g 常规
2.5.tostring("g"); // 2.5
// n 数字
2500000.tostring("n"); // 2,500,000.00
// x 16进制
255.tostring("x"); // ff
// c# 日期格式
datetime dt = datetime.now;
dt.tostring();//2005-11-5 13:21:25
dt.tofiletime().tostring();//127756416859912816
dt.tofiletimeutc().tostring();//127756704859912816
dt.tolocaltime().tostring();//2005-11-5 21:21:25
dt.tolongdatestring().tostring();//2005年11月5日
dt.tolongtimestring().tostring();//13:21:25
dt.tooadate().tostring();//38661.5565508218
dt.toshortdatestring().tostring();//2005-11-5
dt.toshorttimestring().tostring();//13:21
dt.touniversaltime().tostring();//2005-11-5 5:21:25
dt.year.tostring();//2005
dt.date.tostring();//2005-11-5 0:00:00
dt.dayofweek.tostring();//saturday
dt.dayofyear.tostring();//309
dt.hour.tostring();//13
dt.millisecond.tostring();//441
dt.minute.tostring();//30
dt.month.tostring();//11
dt.second.tostring();//28
dt.ticks.tostring();//632667942284412864
dt.timeofday.tostring();//13:30:28.4412864
dt.tostring();//2005-11-5 13:47:04
dt.addyears(1).tostring();//2006-11-5 13:47:04
dt.adddays(1.1).tostring();//2005-11-6 16:11:04
dt.addhours(1.1).tostring();//2005-11-5 14:53:04
dt.addmilliseconds(1.1).tostring();//2005-11-5 13:47:04
dt.addmonths(1).tostring();//2005-12-5 13:47:04
dt.addseconds(1.1).tostring();//2005-11-5 13:47:05
dt.addminutes(1.1).tostring();//2005-11-5 13:48:10
dt.addticks(1000).tostring();//2005-11-5 13:47:04
dt.compareto(dt).tostring();//0
dt.add(?).tostring();//问号为一个时间段
dt.equals("2005-11-6 16:11:04").tostring();//false
dt.equals(dt).tostring();//true
dt.gethashcode().tostring();//1474088234
dt.gettype().tostring();//system.datetime
dt.gettypecode().tostring();//datetime
补充:asp.net教程,C语言