博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
各种文件上传类型设置,实战示例
阅读量:7037 次
发布时间:2019-06-28

本文共 3885 字,大约阅读时间需要 12 分钟。

各种文件上传类型设置,实战示例

网页上添加一个input file HTML控件:

<input id="File1" type="file" />
默认是这样的,所有文件类型都会显示出来,如果想限制它只显示我们设定的文件类型呢,比如“word“,”excel“,”pdf“文件 
解决办法是可以给它添加一个accept属性,比如:
<input id="File1" type="file" accept=".xls,.doc,.txt,.pdf" />
这样选择的时候默认会显示为.xls,.doc,.txt,.pdf:
文件选择框内只显示出你自定义文件类型的文件,也还比较方便。
这只是最简单的掩人耳目的做法,还是能选择其它文件类型。
所以,如果要做到真正意义上限制类型做法(其实这种算不上限制,只是把你要的文件类型默认显示出来而已,并不是说不能选择其它的),还是要通过js或者后台来控制。

下面是ogg zip 的实战示例:

--------------------------------------------------
*.ogg application/ogg, audio/ogg Ogg Vorbis

$fileMIME = $file['type'];

switch ($fileMIME)
{
case 'application/ogg':
$tmpFile = $this->generateDir($modelFileBaseDir).$fileName.'.Ogg';
break;
case 'audio/ogg':
$tmpFile = $this->generateDir($modelFileBaseDir).$fileName.'.Ogg';
break;
case 'ogg':
$tmpFile = $this->generateDir($modelFileBaseDir).$fileName.'.Ogg';
break;
--------------------------------------------------
*.zip aplication/zip Compressed Archive

$fileMIME = $file['type'];

switch ($fileMIME)
{
case 'application/x-zip-compressed':
$tmpFile = $tmpFileDir.$fileName.'.ZIP';
break;
case 'aplication/zip':
$tmpFile = $tmpFileDir.$fileName.'.ZIP';
break;
-------------------------------------------------

/**

* java 测试上传zip
*
*/
public static void testUploadZip(){
String url = "http://xxxx";
String fileName = "e:/keehelper/pic.zip";
Map<String, String> textMap = new HashMap<String, String>();
//可以设置多个input的name,value
textMap.put("name", "testupfile");
textMap.put("type", "1");
//设置file的name,路径
Map<String, String> fileMap = new HashMap<String, String>();
fileMap.put("upfile", fileName);
String contentType = "application/x-zip-compressed";
String ret = formUpload(url, textMap, fileMap,contentType);
System.out.println(ret);
}

================================================

附支持的文件类型:
*.3gpp audio/3gpp, video/3gpp 3GPP Audio/Video
*.ac3 audio/ac3 AC3 Audio
*.asf allpication/vnd.ms-asf Advanced Streaming Format
*.au audio/basic AU Audio
*.css text/css Cascading Style Sheets
*.csv text/csv Comma Separated Values
*.doc application/msword MS Word Document
*.dot application/msword MS Word Template
*.dtd application/xml-dtd Document Type Definition
*.dwg image/vnd.dwg AutoCAD Drawing Database
*.dxf image/vnd.dxf AutoCAD Drawing Interchange Format
*.gif image/gif Graphic Interchange Format
*.htm text/html HyperText Markup Language
*.html text/html HyperText Markup Language
*.jp2 image/jp2 JPEG-2000
*.jpe image/jpeg JPEG
*.jpeg image/jpeg JPEG
*.jpg image/jpeg JPEG
*.js text/javascript, application/javascript JavaScript
*.json application/json JavaScript Object Notation
*.mp2 audio/mpeg, video/mpeg MPEG Audio/Video Stream, Layer II
*.mp3 audio/mpeg MPEG Audio Stream, Layer III
*.mp4 audio/mp4, video/mp4 MPEG-4 Audio/Video
*.mpeg video/mpeg MPEG Video Stream, Layer II
*.mpg video/mpeg MPEG Video Stream, Layer II
*.mpp application/vnd.ms-project MS Project Project
*.ogg application/ogg, audio/ogg Ogg Vorbis
*.pdf application/pdf Portable Document Format
*.png image/png Portable Network Graphics
*.pot application/vnd.ms-powerpoint MS PowerPoint Template
*.pps application/vnd.ms-powerpoint MS PowerPoint Slideshow
*.ppt application/vnd.ms-powerpoint MS PowerPoint Presentation
*.rtf application/rtf, text/rtf Rich Text Format
*.svf image/vnd.svf Simple Vector Format
*.tif image/tiff Tagged Image Format File
*.tiff image/tiff Tagged Image Format File
*.txt text/plain Plain Text
*.wdb application/vnd.ms-works MS Works Database
*.wps application/vnd.ms-works Works Text Document
*.xhtml application/xhtml+xml Extensible HyperText Markup Language
*.xlc application/vnd.ms-excel MS Excel Chart
*.xlm application/vnd.ms-excel MS Excel Macro
*.xls application/vnd.ms-excel MS Excel Spreadsheet
*.xlt application/vnd.ms-excel MS Excel Template
*.xlw application/vnd.ms-excel MS Excel Workspace
*.xml text/xml, application/xml Extensible Markup Language
*.zip aplication/zip Compressed Archive

 

转载地址:http://xpnal.baihongyu.com/

你可能感兴趣的文章
Java 单元测试利器之 Junit
查看>>
我的友情链接
查看>>
媒体关注OSV智能桌面虚拟化平台
查看>>
安装VMware Workstation提示the msi failed的解决办法
查看>>
MongoDB安装配置
查看>>
使程序在Linux下后台运行
查看>>
webpack构建h5plus多页面移动app
查看>>
Varnish缓存更新策略调试过程
查看>>
unix bsd linux gun 粗略解释
查看>>
shell中特殊符号的用法
查看>>
我的友情链接
查看>>
上传贴图
查看>>
Spring Cloud各组件重试总结
查看>>
【面试题】C语言:模拟实现内存放置函数memset()
查看>>
桌面虚拟化 | 同VDI扭打,IDV要如何补齐短板?
查看>>
CSS Modules 详解及 React 中实践
查看>>
假如Java被报废,未来将会怎样?
查看>>
vue-cli学习——axios实例
查看>>
1 数据结构(13)_二叉树的概念及常用操作实现
查看>>
分享12套超酷的后台管理员界面网站模板
查看>>