2013-07-02 28 views
6

Tôi đã đọc rất nhiều bài viết về chuỗi định dạng số, ví dụ: http://msdn.microsoft.com/en-us/library/0c899ak8.aspxCách lấy chuỗi định dạng số tốt nhất?

Tôi thực sự không hiểu cách viết chuỗi định dạng tốt nhất. Để có được kết quả ngoại trừ, tôi có thể viết một số cách. Ví dụ: số in 1234567890 dưới dạng văn bản "1,234,567,890". Những cách này cho kết quả tương tự:

1234567890.ToString("#,#") 
1234567890.ToString("#,##") 

"#, ##" là cách phổ biến trên internet nhưng tại sao? Xin vui lòng cho tôi một số thông tin làm thế nào để viết một chuỗi định dạng tốt. Cảm ơn.

+0

Định dạng chuỗi phụ thuộc vào lý do cần phải định dạng chuỗi. Bạn có muốn định dạng nó cho tiền tệ không? Nếu bạn muốn định dạng tiền tệ, bạn có thể sử dụng '1234567890.ToString (" C2 ")' hoặc '1234567890.ToString (" c ")' – Prix

+0

Khi muốn định dạng số 1234567890 thành chuỗi "1,234,567,890", nhiều người dùng sẽ nghĩ sử dụng "#, ##", nhưng tại sao chúng ta không sử dụng "#, #". Đây là câu hỏi của tôi. –

+0

Tôi thấy, về cơ bản, * sự khác biệt giữa # và ## * là gì. Thú vị, tôi cũng muốn biết. – Nolonar

Trả lời

1

Theo như tôi có thể nhìn thấy, không có sự khác biệt giữa "#,#""#,##": cả hai bình 'định dạng một số có dải phân cách nhóm và không có phần phân đoạn'. Tham khảo SSCLI source for general number formatting để biết chi tiết đẫm máu.

+0

Tôi nhận thấy rằng "#, #" "#, ##" "#, ###" ... đưa ra kết quả tương tự. Nhưng tại sao "#, ##" phổ biến hơn những người khác. Bằng mọi cách, cách nào thể hiện nhanh chóng? –

+0

Có, tất cả đều giống nhau. Sẽ không có sự khác biệt đáng kể trong thời gian chạy (xem mã nguồn) nhưng '#, #' là một ký tự ít hơn để phân tích cú pháp trong chuỗi định dạng - nếu bạn nghiêng về dicker cho đồng xu khi mua nhà. –

+0

Tại sao '#, ##' phổ biến hơn - tai nạn tuyệt đối cộng với mã hóa sao chép-dán. –

0

Trong trường hợp của bạn không quan trọng, bởi vì bạn đang sử dụng int. Định dạng này #,###,# là dành cho đôi và phương tiện mà in chỉ có hai chữ số sau dấu thập phân

+2

Erm, không. dấu phẩy là dấu tách nhóm, không phải là dấu thập phân. – Nolonar

+0

Bạn có thể đưa ra một ví dụ để tìm sự khác biệt giữa 2 chuỗi định dạng mà tôi đã cung cấp. Cảm ơn. –

+0

bạn là đúng, nó phụ thuộc vào các thiết lập khu vực. Nếu, nhóm phân cách, sau đó #, # và #, ## là cùng một điều. Nếu, là dấu tách thập phân, nó tạo ra sự khác biệt về số thập phân được hiển thị –

Các vấn đề liên quan