我正在尝试将9.999.999的值转换为9'999.999使用C#中的CultureInfo,但我无法奏效。
我该怎么做?
,所以它是一个字符串,您想要第一组的不同组分离器?
您可以替换除最后一个点以外的所有:
string value = "9.999.999";
StringBuilder sb = new StringBuilder(value);
bool skippedLast = false;
for (int i = sb.Length - 1; i >= 0; i--)
{
if (sb[i] == '.')
{
if (!skippedLast)
skippedLast = true;
else
sb[i] = ''';
}
}
string desiredOutput = sb.ToString(); // 9'999.999
因为用框架运送的默认IFormatProvider
实现缺乏您想要/需要的功能,我建议您自己实现界面
此外,由于未密封CultureInfo
,您可以将类扩展并将您的实现提供给System.Threading.Thread.CurrentThread.CurrentCulture
...所有连续的格式调用该线程都将使用您的实现(除非使用特定格式提供者来调用...(