我正在编写一个返回文件大小的"函数"(以B,KB,MB,GB为单位).
VB.Net代码总是首先以字节为单位获取大小,因此当文件大小(以字节为单位)小于100时,它返回B,如果> 1000,则将其除以1000,然后返回KB.但是当它应该是MB时,我尝试除以1000000,它返回的大小总是比它应该的大2 MB!
有人可以告诉我我做错了什么!
我的文件大小是(15,570,550字节).. ..是...(14.8 MB)
所以当我通过这个函数运行它时它返回16MB!
Public Function GetFileSize(ByVal TheFile As String, _
Optional ByVal ShowSizeType As Boolean = False) As String
If TheFile.Length = 0 Then Return ""
If Not System.IO.File.Exists(TheFile) Then Return ""
'---
Dim TheSize As Integer = My.Computer.FileSystem.GetFileInfo(TheFile).Length
Dim SizeType As String = ""
'---
If TheSize < 1000 Then
SizeType = "B"
Else
If TheSize < 1000000000 Then
If TheSize < 1000000 Then
SizeType = "KB"
TheSize = TheSize / …Run Code Online (Sandbox Code Playgroud)