2009-08-26 20 views
8

我想在.NET中顯示一個字符串中的負號。我想,它表示看起來像這樣的公式的字符串:如何在.NET中顯示負面的符號?

7--5 = 12

但是顯示的時候,我想這樣看起來爲負更自然的2號減號將小幅上調而不是連續只有2個減號。

這可能嗎?

+0

如果你正在寫教育軟件,我希望這是故意的,這裏的公式是錯誤的:-) – yoyoyoyosef 2009-08-26 14:29:09

+0

哈哈,哎呀,我應該解決這個問題... – NotDan 2009-08-26 15:14:25

回答

7

使用Unicode字符SUPERSCRIPT MINUS (U+207B)

例如:

7-⁻5 = 13

編輯:或者,用MINUS SIGN (U+2212)爲負:

7 − ⁻5 = 13
+1

這是什麼被要求...但這是醜陋的:) – STW 2009-08-26 02:01:47

+1

它會看起來更好,如果你使用一個減號(U + 2212)或短劃線包圍第一空間減去 – yoyoyoyosef 2009-08-26 14:34:03

+0

是的,好主意。 – SLaks 2009-08-26 20:29:34

9

不知道那裏有你想要怎樣的一個人物,但一個簡單的解決方案(和一個會很容易地理解和執行)將圍繞你的負數在括號:

7 - (-5) = 13 
+0

這是印刷最強壯的解決方案。 – 2009-08-26 02:05:04

+0

這很好,除了目標讀者是小學生。我認爲他們會理解這種格式的增加減號。否則,這是我可能會做的。 – NotDan 2009-08-26 02:10:53

0

您可以使用Unicode字符U +2212(減號S ign):7--5 = 13

在我使用的字體中,減號相對於破折號略顯示。你的結果可能有所不同

2

這是在C#中的格式字符串一個很好的資源: SteveX Compiled - Format Strings

您可以選擇如何負數通過使用範圍表達式顯示在您的格式字符串。它的格式爲:

{0:<PositiveFormat>;<NegativeFormat>;<ZeroFormat>} 

例如,這是如何在括號中顯示爲0負數和單詞「零」:

{0:#;(#);Zero} 

使用這種技術,我覺得你可以試試它與負格式字符串中的負號(這是ASCII碼U + 207B)的上標版本。

{0:#;⁻#;Zero} 

HTH,安德森

1

傳統的數學排版您使用二進制(減)一個破折號U + 2013或減去U + 2212(而不是一個連字符!)和一元(否定)減去,並且它們以間距(二進制減去之前和之後的空格,一元減去和它否定之間的空格之間沒有空格)區分開來。

但是,如果你想進一步區分一元,我建議取代標減去U + 207B(但保持周圍減法減去間距):

7 - ⁻5= 13