How do I parse 1,2
with Single.Parse
? The reason of asking is because, when I am using CultureInfo.InvariantCulture
I don't get 1.2 as I would like, but rather 12.
Shouldn't "Invariant Culture" ignore the culture?
Consider the following example:
using System;
using System.Globalization;
public class Program
{
public static void Main()
{
Console.WriteLine(Single.Parse("1,2", CultureInfo.InvariantCulture));
Console.WriteLine(Single.Parse("1.2", CultureInfo.InvariantCulture));
float value;
Console.WriteLine(Single.TryParse("1,2", NumberStyles.Float, CultureInfo.InvariantCulture, out value));
Console.WriteLine(Single.TryParse("1,2", out value));
Console.WriteLine(value);
}
}
The output of this will be
12
1.2
False
True
12
But I was expecting:
1.2
1.2
True
True
1.2
Based on my reading of InvariantCulture
I should get that result, however I am not.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…