Tôi có giá trị thập phân 18.8. Các giá trị được lưu trữ trong biến này có thể thuộc bất kỳ loại nào. Ví dụ: nó có thể là 1.0000000 hoặc 1.00004000 hoặc 5.00000008. Tôi muốn viết một phương thức để tôi có thể chuyển số thập phân cho nó và nhận chuỗi được làm tròn lên. Điều này sẽ không là vấn đề nếu tôi biết những nơi thập phân mà tôi muốn nhận được. Nhưng những gì tôi muốn nhận được là:Cách tốt nhất aproach làm tròn số thập phân trong C#
Khi đó là 1,0000000, nó phải trả lại 1.
Nếu đó là 1.00004000 thì phải trả 1,00004.
Khi đó là 5.00000008, nó sẽ trả về 5.00000008. Vì vậy, về cơ bản nó sẽ tìm thấy tất cả 0 được đằng sau chữ số cuối cùng khác nhau sau đó 0 và cắt nó đi.
Tôi nên sử dụng nó như thế nào? Phương pháp tốt nhất là gì? Tôi nhận được giá trị này từ SQL và đặt nó trong biến thập phân nhưng sau đó tôi muốn hiển thị nó và có 5.0000000 khi nó có thể được hiển thị như 5 là một chút overkill cho tôi.
Hy vọng tôi có thể nhận được một số đề xuất hay.
Với regards,
MadBoy
Tôi không biết số lượng chữ số thập phân tôi cần. Điều này sẽ làm việc nếu tôi biết rằng tôi muốn cắt nó sau 3 chữ số trở lên. Nhưng tôi muốn cắt nó chỉ khi tất cả các chữ số là số không sau số không cuối cùng. – MadBoy
Nếu bạn có 1.00004000, sau đó sau ToString ("0. #####################") bạn sẽ có "1.00004". Nói về MAX của # dấu hiệu: nó là 28. Thập phân cho phép tối đa 28-29 chữ số có nghĩa. Điều này làm cho 1 cho số 0 và 28 cho các dấu hiệu khác. Ngay cả khi bạn có smth như 15555.98900008900 nó sẽ là ok. – terR0Q
Cảm ơn, nó hoạt động. Tôi nên thử nghiệm nó trước khi nghi ngờ nó sẽ hoạt động như bạn đã nói. – MadBoy