簡體   English   中英

逗號分隔雙

[英]comma separated double

我在哪里可以設置ToString()方法寫入double的樣式? 我得到例如2,2345而我想擁有2.2345

謝謝你的提示,

再見

Double.ToString()方法已重載,因此您可以使用幾個不同的簽名來調用它以獲得所需的輸出。

在這種情況下,您的區域性設置會影響ToString()函數的輸出。 要獲得所需的結果,應調用Double.ToString(IFormatProvider) ,並傳入CultureInfo.InvariantCulture

myDouble.ToString(CultureInfo.InvariantCulture);

這應該可以解決您的問題。

為了將來參考,請注意Double.ToString()另一個常見版本是Double.ToString(String)重載。 String參數是數字格式的字符串,可以是預定義的字符串,也可以是您指定的字符串。 例如:

myDouble.ToString("format string here");

MSDN上有幾篇關於格式字符串的文章: 標准數字格式字符串自定義數字格式字符串

double a = 2.2345;
string b = a.ToString(CultureInfo.InvariantCulture);

您需要指定一個FormatProvider,通常作為CultureInfo。

例如:

string s = d1.ToString(System.Globalization.CultureInfo.InvariantCulture);

如果您希望影響整個應用程序。 可以在初始化時設置。 因此,請注意,這將意味着對所有文化的有效改變。

var culture = new CultureInfo(Thread.CurrentThread.CurrentCulture.Name);
culture.NumberFormat.NumberDecimalSeparator = ".";
Thread.CurrentThread.CurrentCulture = culture;

然后:

string value = (1002.300).ToString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM