假设页面上有一个文件域
<input type="file" id="file_input" />
var input = document.getElementById("file_input")
//文件域选择文件时, 执行readFile函数
input.addEventListener('change',readFile,false)
function readFile(){
var file = this.files[0]
console.log("文件名:"+file.name)
console.log("文件类型:"+file.type)
console.log("文件大小:"+file.size)
}
有一种叫jspsmartupload的包用来简化文件上传下载的编写里面可以获取文件大小
//取得文件
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0)
//取得文件名
String fileName = myFile.getFileName()
//取得文件大小
int fileSize = myFile.getSize()
这是基于spring架构的上传文件支持多个文件上传,拿到file对象后,直接file.size()就可以获取文件的大小,
if (request instanceof MultipartHttpServletRequest) {
MultipartHttpServletRequest multipartHttpServletRequest = (MultipartHttpServletRequest) request
for (Iterator it = multipartHttpServletRequest.getFileNames()it.hasNext()) {
String key = (String) it.next()
MultipartFile file = multipartHttpServletRequest.getFile(key)
String originalFilename = file.getOriginalFilename()
long size = file.getSize()//文件大小需要转换成KB或M
if (StringUtils.isNotBlank(originalFilename)) {
String suffixName = originalFilename.indexOf(".") == -1 ? "" : originalFilename.substring(originalFilename.lastIndexOf(".") + 1).toLowerCase()
try {
InputStream inputStream = file.getInputStream()
byte[] copyToByteArray = FileCopyUtils.copyToByteArray(inputStream)
} catch (IOException e) {
e.printStackTrace()
}
}
}
}
1、php.ini:upload_max_filesize 所上传的文件的最大大小。默认值2M。2、php.ini:memory_limit 本指令设定了一个脚本所能够申请到的最大内存字节数,默认值8M。如果不需要任何内存上的限制,必须将其设为 -1。如果内存不够,则可能出现错误:Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)
3、php.ini:post_max_size 设定POST数据所允许的最大大小。此设定也影响到文件上传。要上传大文件,该值必须大于 upload_max_filesize。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)