我想阻止用户在<asp:FileUpload />
上传大于1的文件。问题是在文件系统中检测到一个大小为993 Mo(0.993 Go)的文件(使用jQuery)...
$(":file").change(function () {
alert($(this)[0].files[0].size);
});
...大小为1,017 Go在Web浏览器中(chrome和IE都表示相同的值)。如果大小(浏览器1和文件系统1)不同,我怎么能准确验证表单?
答案 0 :(得分:1)
您可能已经或可能不知道,有两种测量文件大小的系统:二进制和十进制。在二进制文件中,每1 MB有1024 KB,每1 GB有1024 MB等。在十进制中,每1 MB有1000 KB,每1 GB有1000 MB等。每个程序/公司的方式可能有所不同/无论采取什么措施数据。
答案 1 :(得分:0)
文件系统的大小是存储文件所需的实际大小 - 它可能与文件内容的字节长度不同,因为文件系统是群集的。
文件占用磁盘上的集群,并且浪费了不用于实际存储数据的集群区域
这会导致文件的实际大小与磁盘上的大小之间存在差异。
答案 2 :(得分:0)
添加功能你可以获得文件的大小
add: function (e, data) {
try {
var imageKbytes = parseFloat(data.files[0].size / 1024);
var ImageMbytes = parseFloat(imageKbytes) / 1024;
if (ImageMbytes > parseFloat(2.0)) {
$("#errormessage").text("Please upload image upto 2 MB only");
return;
}
}
catch (ex) {
OpenAlertDialog(ex.message);
}
}