【发布时间】:2023-03-22 23:42:01
【问题描述】:
C#.net 中的 Convert.ToString Method 和 Object.ToString() 除了处理 null 值的方式外,还有什么区别。 从全球化的角度来看,两者之间可能存在一些差异。
【问题讨论】:
标签: c# .net string globalization
C#.net 中的 Convert.ToString Method 和 Object.ToString() 除了处理 null 值的方式外,还有什么区别。 从全球化的角度来看,两者之间可能存在一些差异。
【问题讨论】:
标签: c# .net string globalization
是和不是。
例如,Convert.ToString(int) 方法与 Int32.ToString() 方法相同,as MSDN states in the 'Remarks' section:“此实现与 Int32.ToString() 相同。”但是,@987654325 @ 类还提供了将IFormatProvider 作为第二个参数的覆盖(例如Convert.ToString(int, IFormatProvider)),这可用于调整输出格式,例如通过传递 CultureInfo 实例。
【讨论】:
Object.ToString()(Int32.ToString() 覆盖)相比有所不同,并且此方法不提供 IFormatProvider 参数。
Convert.ToString 大部分情况下都会在传入的值上调用 ToString。例如只有少数例外
Convert.ToString(object, IFormatProvider) 检查值是否实现 IConvertable 并委托给它,否则如果值不为空则委托给 value.ToString。
Convert.ToString(IntXX, Int32) 其中 XX 是 16、32、64。这会进行基本转换。
所以我认为两者在全球化方面没有任何区别。
【讨论】: