限制300MB的文件上传确在mac和windows上计算不出体积?

296 阅读1分钟

同样的视频,在mac上显示了304.3 MB,在windows上显示了290 MB,这是为什么呢?可以看到他们的字节大小都是一致的。这是为什么呢?

image.pngimage.png

原来在windows和mac 的计算方式是不一致的,widnows 是 /1024,而mac 是 /1000,这就导致了两个不同。通过计算:

windows:

290.2402400970459 = 304338950 / 1024 / 1024

mac:

304.33895 = 304338950 / 1000 /1000

因此我们在做视频上传或其他需要判断文件大小的时候,要注意区分操作系统。

本代码是web页面
//判断系统类型
function OSnow(){
    var agent = navigator.userAgent.toLowerCase();
    var isMac = /macintosh|mac os x/i.test(navigator.userAgent);
    if (agent.indexOf("win32") >= 0 || agent.indexOf("wow32") >= 0) {
        //your code
        alert("这是windows32位系统");
    }
    if (agent.indexOf("win64") >= 0 || agent.indexOf("wow64") >= 0) {
        //your code
        alert("这是windows64位系统");
    }
    if(isMac){
        //your code
        alert("这是mac系统");
    }
}
OSnow();