바이트를 MB로 변환하는 Windows 변환이란 무엇입니까?
을 내 폴더의 계산 된 크기는 (1,568,653,060 바이트)바이트를 mb로 변환하는 Windows 변환이란 무엇입니까?
// 1.
// Get array of all file names.
string[] a = Directory.GetFiles(path, "*.*");
// 2.
// Calculate total bytes of all files in a loop.
long b = 0;
foreach (string name in a)
{
// 3.
// Use FileInfo to get length of each file.
FileInfo info = new FileInfo(name);
b += info.Length;
}
//b = 1568653060
//However, googles conversion...convert 1568653060 bytes to mb
//returns
//1568653060 b = 1568.65306 mb
하지만, 내 계산에 따라
// Return total size in MB int
float mbValue = (b/1024f)/1024f;
//mbValue = 1495.98413
//should return 1496 mb
하지만 창문을 반환 ....
크기 : 1.45 GB (1,568,653,060 바이트)
디스크의 크기 : 1.46GB (1,568,686,080 바이트)
//이 값을 MBs로 변환하면 1460MB가됩니다 ....
다른 36Mb는 어디에서 나옵니까?
나는 그것을 정확히 필요로합니다 ... 어떤 방법을 고수해야합니까?
사용자 파일 업로드 제한 설정
* "windows returns ..."라고 말하면 * 파일 탐색기 *를 사용한다고 가정합니다. 이 경우 Explorer는 어떻게 "디스크의 크기"를 계산합니까?] (https://blogs.msdn.microsoft.com/oldnewthing/20160427-00/?p=93365), [Explorer는 폴더 크기 정보를 어떻게 계산합니까? 폴더 툴팁에?] (https://blogs.msdn.microsoft.com/oldnewthing/20120503-00/?p=7713), [Explorer에서 파일의 크기를 결정할 수없는 이유는 무엇입니까?] (https : // blogs.msdn.microsoft.com/oldnewthing/20110315-00/?p=11223). – IInspectable
나를 위해 1,568,653,060/1024/1024 = 1495.98 - 그래서 Google은 100을 제외한 1000을 사용했습니다. – BugFinder
옛날에는 메가 (1.000.000)와 메비 (2)를 구별하는 것이 필요하다고 생각한 사람이있었습니다^20) 바이트. 이로 인해 어떤 사람들은 잘 정립 된 1024 (2^10) 대신에 Bytes를 나타 내기위한 요인으로 1.000을 사용하는 것이 현명하다고 믿고 있습니다. 사람들이 당신을 비웃는 것을 원하지 않으면 1024로 고정하십시오. –