C# 自定义字符串格式

C# 自定义字符串格式,c#,string,formatting,decimal,C#,String,Formatting,Decimal,我们有一个将存储导入数据库的导入服务。纬度和经度列当前未在导入时格式化,导致在数据库中插入无效值。因此,我需要对任何lat/long进行格式化,使其在小数点前有3位,在小数点后最多有6位。但它似乎不起作用。38.921322或-12.235等输入值似乎不符合提供的格式。在C字符串格式化方面有经验的人能解释一下如何实现这一点吗?提前谢谢。您尝试过String.Format{0:000.000000},value 输出:123.000000使用0代替: 如果有相应的数字,0将用相应的数字替换零;否则

我们有一个将存储导入数据库的导入服务。纬度和经度列当前未在导入时格式化,导致在数据库中插入无效值。因此,我需要对任何lat/long进行格式化,使其在小数点前有3位,在小数点后最多有6位。但它似乎不起作用。38.921322或-12.235等输入值似乎不符合提供的格式。在C字符串格式化方面有经验的人能解释一下如何实现这一点吗?提前谢谢。

您尝试过String.Format{0:000.000000},value

输出:123.000000

使用0代替:

如果有相应的数字,0将用相应的数字替换零;否则,结果字符串中将显示零

用相应的数字替换符号(如果有);否则,结果字符串中不会出现数字


您正在解析或格式化数字吗?请注意该过程中使用的CultureInfo,因为某些区域性使用逗号而不是句号作为小数分隔符。您是否在数据库中将LAT/LONG存储为VARCHAR?谢谢,这正是我所需要的!
Console.WriteLine("{0:000.000000}", 123);