NEWS

[C#] Thiết lập dấu (,) hay dấu (.) ở định dạng số đúng với định dạng số Việt Nam

[C#] Thiết lập dấu (,) hay dấu (.) ở định dạng số đúng với định dạng số Việt Nam
Đăng bởi: Thảo Meo - Lượt xem: 4793 07:54:35, 12/01/2023C#   In bài viết

Xin chào các bạn, bài viết hôm nay mình tiếp tục hướng dẫn các bạn cách thay đổi dạng sử dụng dấu phẩy (,) và dấu chấm (.) khi định dạng số trong lập trình C#, winform.

Trong c# Winform, bạn có thể sử dụng ToString() method để chuyển đổi số thành chuỗi và chỉ định định dạng tùy chỉnh.

Chuỗi định dạng bao gồm các placeholder cho các chữ số của số và cũng cho phép chỉ định định dạng dựa trên văn hóa.

Ví dụ sau đây minh họa cách sử dụng ToString() method để chuyển đổi double thành chuỗi với dấu phẩy là dấu phân cách thập phân và dấu chấm là dấu phân cách hàng nghìn:

double number = 123456.789;

var culture = new CultureInfo("en-US");
culture.NumberFormat.NumberDecimalSeparator = ",";
culture.NumberFormat.NumberGroupSeparator = ".";

string formattedNumber = number.ToString("N", culture);
Console.WriteLine(formattedNumber); // "123.456,789"

Trong ví dụ này, culture được thiết lập thành tiếng Anh Mỹ, nhưng với các thiết lập định dạng tùy chỉnh. NumberDecimalSeparator thuộc tính đặt dấu phẩy là dấu phân cách thập phân, trong trường hợp này là một ",".

NumberGroupSeparator là dấu phân cách hàng nghìn, trong trường hợp này là một ".". Sau đó, ToString() method được sử dụng với chuỗi định dạng "N" được sử dụng để định dạng số với d.

Số phân cách hàng nghìn và số chữ số thập phân cố định.

Bạn cũng có thể sử dụng cùng logic này để thay đổi định dạng của các số nguyên, tiền tệ hoặc các loại số khác bằng cách chỉ định các chuỗi định dạng khác nhau như "C","D" etc. Bạn cũng có thể thay đổi culture để xem cách các số định dạng thay đổi.

Để thay đổi định dạng số trên các control trong Winform, bạn có thể sử dụng thuộc tính Format để thay đổi định dạng, ví dụ như TextBox, NumericUpDown, DateTimePicker.

NumericUpDown numControl = new NumericUpDown();
numControl.Format = NumericUpDownFormat.Custom;
numControl.CustomFormat = "###,##0.##";

Culture sẽ thay đổi cả dấu phẩy và dấu chấm trong định dạng số và cách sắp xếp của chúng. Ví dụ như, trong văn hóa tiếng Việt Nam, dấu phân cách hàng nghìn là "." và dấu phân cách thập phân là ",".

Tại mức độ chung, để thay đổi dấu chấm và dấu phẩy trong định dạng số trong C# Winform, bạn cần phải sử dụng thuộc tính Format và customFormat hoặc sử dụng lớp CultureInfo để thay đổi

double number = 123456.789;

var culture = new CultureInfo("vi-VN");
culture.NumberFormat.NumberDecimalSeparator = ".";
culture.NumberFormat.NumberGroupSeparator = ",";

string formattedNumber = number.ToString("N", culture);
Console.WriteLine(formattedNumber); // "123,456.789"

Thanks for watching!

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

[C#] Thiết lập dấu (,) hay dấu (.) ở định dạng số đúng với định dạng số Việt Nam
Đăng bởi: Thảo Meo - Lượt xem: 4793 07:54:35, 12/01/2023C#   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp
.