首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >指定了格式,但参数不是IFormattable

指定了格式,但参数不是IFormattable
EN

Stack Overflow用户
提问于 2010-05-17 22:09:11
回答 2查看 7.9K关注 0票数 9
代码语言:javascript
复制
string listOfItemPrices = items.ToSemiColonList(item => string.Format("{0:C}", item.Price.ToString()));

我只是想把这里的价格格式化成两位小数点。好的,那么string.Format没有实现IFormattable?好的,不确定如何解决这个问题,这样我就可以在这里格式化小数(价格)。

EN

回答 2

Stack Overflow用户

发布于 2010-05-17 22:09:32

通过将item.Price.ToString()传递给String.Format,您传递的是字符串,而不是小数。

由于字符串不能与格式字符串一起使用,因此会出现错误。

您需要通过删除Decimal来将.ToString()值传递给String.Format

票数 17
EN

Stack Overflow用户

发布于 2010-05-17 22:25:58

这里没有使用string.format的意义,它用于将格式化的值添加到字符串中。例如:

代码语言:javascript
复制
String.Format("This is my first formatted string {O:C} and this is my second {0:C}",ADecimal,AnotherDecimal)

如果只想将十进制变量的值作为格式化字符串,那么只需将字符串格式化程序传递给ToString()方法即可,例如

代码语言:javascript
复制
ADecimal.ToString("C");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2849688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档