Tại sao double.TryParse()
với các thiết lập này không phân tíchsố Parsing với hành vi lạ double.TryParse
double.TryParse("1.035,00",
NumberStyles.AllowCurrencySymbol | NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite |
NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign,
GlobalSettings.Instance.DefaultCulture, out price);
nơi DefaultCulture
là sl-SI (Slovenia), trong đó có các chấm .
là biểu tượng chữ số nhóm và, như dấu thập phân . Số price
vẫn là 0
sau khi phân tích cú pháp.
?
TryParse trả về một 'bool' cho biết nếu phân tích giá trị thành công hay thất bại. Ví dụ của bạn, TryParse trả về 'false'. Vì vậy, nguyên nhân của 'price' là' 0' là chuỗi không thể được phân tích cú pháp. – dtb
Tôi thấy lạ khi một số người bỏ phiếu gần do nội địa hoá. Nếu vấn đề là văn hóa thì nó sẽ ảnh hưởng đến nhiều nền văn hóa, tất cả những người sử dụng dấu phẩy là dấu phân cách thập phân, cả hai tiêu chuẩn ISO và biểu diễn được sử dụng ở hầu hết các quốc gia –