簡體   English   中英

為什么Double to string丟棄小數點后的零,如何保留零?

[英]why Double to string discards the zeroes after decimal point, how to retain the zeroes?

在方案1中,字符串轉換完全轉換。 即:1.25(雙精度)等於1.25(字符串),但是在方案2中,我的輸入double是1.0,但轉換后的字符串是1。為什么會這樣? 以及如何在字符串轉換過程中保留小數點后的零?

Scenario 1:
double input1 = 1.25;
string output1 = input1.ToString("0.################");  // output1 = "1.25"

Scenario 2:
double input2 = 1.0;
string output2 = input2.ToString("0.################");  // output2 = "1"   

我需要做什么才能將output2設置為“ 1.0”而不是“ 1” ?? 提前致謝。

字符串格式的小數點后的井號標簽#表示該值是可選的。 如果希望獲得輸出1.0,則需要以下內容:

Scenario 2:
double input2 = 1.0;
string output2 = input2.ToString("0.0###############");  // output2 = "1.0"

如果使用0而不是#那么當它們不重要時,將保留而不是刪除零。

double input2 = 1.0;
string output2 = input2.ToString("0.0###############");  // output2 = "1.0"

可以在MSDN上找到有關數字格式的完整文檔: http : //msdn.microsoft.com/zh-cn/library/0c899ak8%28v=vs.110%29.aspx

暫無
暫無

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

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