str用法 - string.format java




在C#中的字符串格式 (4)

你可以使用指數符號,但我認為它可以適用於所有的數字,而不只是那些大於10000.你可能需要有一個條件來處理這種情況。

我有值範圍從1到10000000.值10000後,我需要顯示值為1​​E6,1E7,1E8,....如何在string.Format中設置此?

感謝所有的答复。
現在我可以通過使用格式“0.E0”來顯示1E5,1E6,1E7,....但是我不想從1到10000設置“E”。
如何去做這個?


像這樣的事情應該做的伎倆:

void Main()
{
  Console.WriteLine(NumberToString(9999));
  Console.WriteLine(NumberToString(10000));
  Console.WriteLine(NumberToString(99990));
  Console.WriteLine(NumberToString(100000));
  Console.WriteLine(NumberToString(10000000));
}

// Define other methods and classes here
static string NumberToString(int n)
{
  return (n > 10000) ? n.ToString("E") : n.ToString();
}

=>

9999
10000
9.999000E+004
1.000000E+005
1.000000E+007

NB:為這個功能選擇一個更好的名字。



String.Format("10^8 = {0:e}", 100000000"); //The "e" will appear lowercase
String.Format("10^8 = {0:E}", 100000000"); //The "E" will appear in uppercase

如果你想要它更漂亮,試試這個:

Console.WriteLine("10^8 = " + 100000000.ToString("0.##E0"));






format