簡體   English   中英

不會將字符串轉換為十進制c#(輸入字符串的格式不正確。)

[英]Won't convert string to decimal c# (Input string was not in a correct format.)

Visual Studio不會將我的字符串轉換為十進制

錯誤:輸入字符串的格式不正確。

碼:

string test = "123.95";
decimal test1 = decimal.parse(test); // string being an int "123" doesnt cause this

還有Convert.toDecimal(測試); 做同樣的事情。

編輯:謝謝你的答案,我在網上看小數如何工作,每個人都在使用'。' 並不是 ','。 對不起我和這篇文章是多么令人難以置信的愚蠢。 再次感謝answeres :)

你現在的文化可能不會使用. 作為小數點分隔符。 在解析字符串時嘗試指定不變文化

using System.Globalization;

...

string test = "123.95";
decimal test1 = decimal.Parse(test, CultureInfo.InvariantCulture); 

或者,您可以指定使用所需特定格式的區域性:

string test = "123.95";
var culture = new CultureInfo("en-US");
decimal test1 = decimal.Parse(test, culture); 

使用此代碼 -

var test1 = "123.95";
decimal result;
decimal.TryParse(test1, out result);

它對我有用。

暫無
暫無

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

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