我开发了一个Excel附加组件,以便用户可以将一些数字从服务器插入到他们的工作表中。现在我正在尝试使用插入的数据格式化单元格 因为我的用户属于各个国家, 附加组件应根据其文化进行格式化。
现在我使用NumberFormatInfo类并手动生成NumberFormat字符串。 这是代码:
NumberFormatInfo nfi = NumberFormatInfo.CurrentInfo;
StringBuilder sbFormat = new StringBuilder();
sbFormat.Append("#");
if (nfi.CurrencyGroupSeparator == "?")
sbFormat.Append(" ");
else
sbFormat.Append(nfi.CurrencyGroupSeparator);
sbFormat.Append("##0");
if (nfi.CurrencyDecimalDigits > 0)
{
sbFormat.Append(nfi.CurrencyDecimalSeparator);
sbFormat.Append(new string('0', nfi.CurrencyDecimalDigits));
}
cell.NumberFormat = sbFormat.ToString();
我不知道这段代码是否涵盖了所有模式。 希望使用Excel提供的默认设置,但我找不到。
有什么想法吗?
谢谢!