Mam ciąg (potwierdzają się słowa przecinku) 0,4351242134Konwersja ciąg do 2 miejsc dziesiętnych
chcę przekonwertować ciąg z dwóch miejsc po przecinku 0,44
Jak zrobić w C# ?
Mam ciąg (potwierdzają się słowa przecinku) 0,4351242134Konwersja ciąg do 2 miejsc dziesiętnych
chcę przekonwertować ciąg z dwóch miejsc po przecinku 0,44
Jak zrobić w C# ?
var probablyDecimalString = "0.4351242134";
decimal value;
if (Decimal.TryParse(probablyDecimalString , out value))
Console.WriteLine (value.ToString("0.##"));
else
Console.WriteLine ("not a Decimal");
Właściwie jeśli wartość początkowa jest łańcuchem, musisz najpierw wybrać Double.Parse. –
Musisz szczególnie parsować, jeśli chcesz uzyskać zaokrąglenie. – Zak
Przepraszam, widziałem ciągi tylko w notowaniu cytatu. Moja wina. –
float f = float.Parse("0.4351242134");
Console.WriteLine(string.Format("{0:0.00}", f));
Zobacz this dla string.Format.
var d = decimal.Parse("0.4351242134");
Console.WriteLine(decimal.Round(d, 2));
wielkie dzięki, działa bardzo dobrze –
Dobrze byłoby zrobić:
var d = "0.4351242134";
Console.WriteLine(decimal.Parse(d).ToString("N2"));
pomogłoby to
double ValBefore= 0.4351242134;
double ValAfter= Math.Round(ValBefore, 2, MidpointRounding.AwayFromZero); //Rounds"up"
float myNumber = float.Parse("0.4351242134");
Console.WriteLine(string.Format("{0:f2}", myNumber));
Co powinno być wynikiem do 0,3? Powinno to być "0,30" lub "0,3"? –