2009-04-17 25 views
5

Tôi đang sử dụng mã bên dưới để chuyển đổi kích thước tệp theo byte (tệp thử nghiệm là 31718 byte) thành KB (30.974609375 KB) nhưng tôi muốn hiển thị số này thành một chữ số thập phân (tức là 30,9 KB). Làm thế nào tôi sẽ làm điều này trong VB.NET?VB.NET Làm cách nào để giảm int đến 1 chữ số thập phân?

New FileInfo(FileName).Length/1024 

Cảm ơn

+1

Số của bạn 30.974609375 bạn đã tuyên bố bạn muốn điều này là 30.9. Điều này có đúng không? Bạn có chắc bạn không làm điều này để làm tròn tới 31.0 không? 30.9123456 sẽ tròn thành 30.9 –

Trả lời

10
Math.Round(New FileInfo(FileName).Length/1024,1) 
+0

Làm cách nào có thể? Trong ví dụ của bạn, bạn đã đưa ra các sự kiện này, size = 31718, chia cho 1024 = 30.974609375, sản lượng mong muốn = 30.9. Câu trả lời bạn nói là hoàn hảo cho 31.0. – dbasnett

+0

Ông đã sai về 30,9. Làm tròn 30.97 sẽ luôn luôn tròn lên, nếu nó là 30.94 hoặc ít hơn nó sẽ làm tròn xuống 30.9. –

+0

Nhưng tôi chắc rằng anh ấy chỉ sử dụng nó như một ví dụ ... –

6

Nếu nó chỉ hiển thị đầu ra rằng bạn cần nó làm tròn cho sau đó sử dụng một định dạng trong ToString

Double.ToString("0.0") 
0

Nếu bạn cần nó cắt ngắn, nhưng không làm tròn (như ví dụ của bạn ngụ ý), Sau đó sử dụng Math.FLoor()

Decimal val = Math.Floor(New FileInfo(FileName).Length/102.4)/10; 
Các vấn đề liên quan