首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否在括号中设置负数的格式,而不使用$符号?

是否在括号中设置负数的格式,而不使用$符号?
EN

Stack Overflow用户
提问于 2011-12-02 00:15:52
回答 2查看 33K关注 0票数 25

我在互联网上看到过用括号加上$符号来格式化一个负的双精度值。货币类型。

我正在寻找一个.NET格式的字符串,以格式化

代码语言:javascript
复制
12345.67 = 12,345.67

-12345.67 = (12,345.67)
EN

回答 2

Stack Overflow用户

发布于 2011-12-02 01:29:55

conditional formatting上的MSDN来拯救你!

一次最多可以指定格式字符串的三个不同部分,并用分号分隔它们。如果指定两个格式字符串节,第一个用于正值和零值,第二个用于负值;如果使用三个部分,则第一个用于正值,第二个用于负值,第三个用于零值。

此C#代码的输出:

代码语言:javascript
复制
        string fmt1 = "#,##0.00";
        string fmt2 = "#,##0.00;(#,##0.00)";
        double posAmount = 12345.67;
        double negAmount = -12345.67;
        Console.WriteLine("posAmount.ToString(fmt1) returns " + posAmount.ToString(fmt1));
        Console.WriteLine("negAmount.ToString(fmt1) returns " + negAmount.ToString(fmt1));
        Console.WriteLine("posAmount.ToString(fmt2) returns " + posAmount.ToString(fmt2));
        Console.WriteLine("negAmount.ToString(fmt2) returns " + negAmount.ToString(fmt2));

是:

代码语言:javascript
复制
posAmount.ToString(fmt1) returns 12,345.67
negAmount.ToString(fmt1) returns -12,345.67
posAmount.ToString(fmt2) returns 12,345.67
negAmount.ToString(fmt2) returns (12,345.67)
票数 63
EN

Stack Overflow用户

发布于 2011-12-02 00:31:08

您可以使用FormatNumber函数:

FormatNumber(-100, UseParensForNegativeNumbers:=TriState.True)

将返回"(100)“

MSDN上有更多信息

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8344575

复制
相关文章

相似问题

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