View Full Version : Tạo Dấu phẩy ngăn cách thập phân trong asp.net
tuanhaikh
23-01-2010, 09:29
Mình muốn cột giá khi nhập vào 100000 thì trở thành 100,000 hay 100.000 thì phải làm sao nhỉ (asp.net)
BoTayConGaQuay
23-01-2010, 09:45
Bác dùng CultureInfo đi:
int.Parse("100000", NumberStyles.AllowThousands | NumberStyles.AllowLeadingSign, new CultureInfo("vi-VN"));
sẽ cho ra: 100.000
Hoặc:
int.Parse("100000", NumberStyles.AllowThousands | NumberStyles.AllowLeadingSign, new CultureInfo("en-US"));
sẽ cho ra: 100,000
tuanhaikh
23-01-2010, 10:08
Tức là thế này
Cột GIÁ mình tổ chức kiểu dữ liệu là float nên không thể insert vào có dấu , hay . được. Nên mình giải quyết thế này : khi nhập vào thì vẫn nhập là 100000 nhưng khi đổ dữ liệu ra gia diện thì đổ ra là 100,000.
Mình viết bằng VB
Mình đã dùng thử code bạn post nhưng nó báo lỗi NumberStyles và CultureInfo không biết có cần kahi báo thư viện gì không bạn.
Giúp mình thêm nhé
thuyduongcd
23-01-2010, 11:31
Sử dụng hàm FormatNumber() của VB mà định dạng nó
BoTayConGaQuay
23-01-2010, 11:44
Tức là thế này
Cột GIÁ mình tổ chức kiểu dữ liệu là float nên không thể insert vào có dấu , hay . được. Nên mình giải quyết thế này : khi nhập vào thì vẫn nhập là 100000 nhưng khi đổ dữ liệu ra gia diện thì đổ ra là 100,000.
Mình viết bằng VB
Mình đã dùng thử code bạn post nhưng nó báo lỗi NumberStyles và CultureInfo không biết có cần kahi báo thư viện gì không bạn.
Giúp mình thêm nhé
Code trên là C# bác ạ, để chạy bác cần import namespace System.Globalization vào. Trong C# thì nó là:
using System.Globalization;
VB thì tui...mù :D
tuanhaikh
28-01-2010, 16:43
Cái hàm FormatNumber() sử dụng sao bạn thuyduong cho vd cụ thể được không
thuyduongcd
29-01-2010, 16:43
document.write(FormatNumber(20000))
kết quả -> 20,000.00
Tham khảo thêm hàm này tại đây:
http://w3schools.com/vbscript/func_formatnumber.asp
sao mình dùng CultureInfo không được vậy. đã thêm thư viện using System.Globalization; rùi.
cú pháp:
int.Parse("100000", NumberStyles.AllowThousands | NumberStyles.AllowLeadingSign, new CultureInfo("en-US"));
bạn nào biết, giúp mình với. Đang cần gấp...
sao mình dùng CultureInfo không được vậy. đã thêm thư viện using System.Globalization; rùi.
cú pháp:
int.Parse("100000", NumberStyles.AllowThousands | NumberStyles.AllowLeadingSign, new CultureInfo("en-US"));
bạn nào biết, giúp mình với. Đang cần gấp...
Bạn xem thử:
double x = 1982345.876;
string s = string.Format( "{0:N2}",x);//Đã format
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.