java dispo lock_java实现文件上传和下载(1)
原理: 使用html 的 标签,提交form 的几个属性必须为: method=post encType=multipart/form-data;
组件:smartUpload或者commons fileupload
smartUpload代码实现
1。文件预览
function showImage(obj)
{
var str=obj.value;
$("#id").html("");
}
2.无插件实现上传
//从request中获取文件上传流信息
InputStream file=request.getInputStream();
//把流信息写入磁盘文件
String str="G:/";
File temp=new File("str");//写入文件
//获得输出流
FileOutputStream out=new FileOutputStream(temp);
//循环写入
byte[] b=new Byte[1024];
int n;
while((n=file.read(b))!=-1)
{
out.write(b,0,n);
}
file.close();
out.close();
//获取文件名称和内容
RandomAccessFile f=new RandomAccessFile("temp","r");
f.readLine();
String string=f.readLine();
int beginIndex=string.lastIndexOf("\")+1;
int lastIndex=string.lastIndexOf("\");
String name=string.substr(beginIndex,lastIndex);
getServletContext.getRealPath("/");//getServletContext().getRealPath("/")获取项目路径
文件下载
//定义保存路径
String f=getServletContext().getRealPath("/")+"images/";
String filename=request.getParamter("filename");
response.setContentType("appliaction/x-msdownload");//application/octet-stream;
response.setHeader("Context-Dispoinition","attachment:filename=\"+filename+"\"");
/*
解决各浏览器的中文乱码问题
*/
String userAgent = request.getHeader("User-Agent");
String userAgent = request.getHeader("User-Agent");
byte[] bytes = userAgent.contains("MSIE") ? fileName.getBytes()
: fileName.getBytes("UTF-8"); // fileName.getBytes("UTF-8")处理safari的乱码问题
fileName = new String(bytes, "ISO-8859-1"); // 各浏览器基本都支持ISO编码
response.setHeader("Content-disposition",
String.format("attachment; filename=\"%s\"", fileName));
response.setHeader("Content-Length", String.valueOf(fileLength));
byte[] buff = new byte[2048];
int bytesRead;
while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {
bos.write(buff, 0, bytesRead);
}
bis.close();
bos.close();
}
java dispo lock_java实现文件上传和下载(1)相关推荐
- Java操作FastDFS实现文件上传和下载
前言:在GItHub上(地址:https://github.com/happyfish100),作者提供了fastdfs-client-java源码,源码里面提供了操作FastDFS的工具类,所以我们 ...
- Java网络编程实现文件上传和下载案例详解
客户端: 文件上传案例的客户端:读取本地文件,上传到服务器,读取服务器回写的数据 明确: 数据源:c:\1.jpg 目的地:服务器 实现步骤: 1.创建一个本地字节输入流FileInputStream ...
- java实现基于AmazonS3文件上传、下载、删除操作
1.创建工具类 AwsS3Utils import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientExcept ...
- java struts 读取文件,java中Struts2 的文件上传和下载示例
文件上传 表单准备 要想使用 HTML 表单上传一个或多个文件 须把 HTML 表单的 enctype 属性设置为 multipart/form-data 须把 HTML 表单的method 属性设置 ...
- Mr.张小白(案例:基于Spring MVC实现文件上传和下载)
基于Spring MVC实现文件上传和下载 一.步骤 1.引入相关依赖pom.xml <?xml version="1.0" encoding="UTF-8&quo ...
- java使用Jsch实现远程操作linux服务器进行文件上传、下载,删除和显示目录信息...
1.java使用Jsch实现远程操作linux服务器进行文件上传.下载,删除和显示目录信息. 参考链接:https://www.cnblogs.com/longyg/archive/2012/06/2 ...
- java里面的文件上传与下载
java里面的文件上传与下载 文件的上传与下载主要用到两种方法: 1.方法一:commons-fileupload.jar commons-io.jar apache的commons-fileuplo ...
- java图片预览上传_java实现文件上传、下载、图片预览
这篇文章主要介绍了java实现文件上传.下载.图片预览,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 多文件保存到本地: @ResponseBody ...
- java spring文件下载_SpringMVC实现文件上传和下载的工具类
本文主要目的是记录自己基于SpringMVC实现的文件上传和下载的工具类的编写,代码经过测试可以直接运行在以后的项目中. 开发的主要思路是对上传和下载文件进行抽象,把上传和下载的核心功能抽取出来分装成 ...
最新文章
- Ubifs文件系统和mkfs.ubifs以及ubinize工具的用法
- 极速写作2017彻底卸载_如何将 Flash 从 Mac 和 Windows 系统中彻底卸载?
- 整数翻转Python解法
- 智能优化算法:引力搜索算法-附代码
- c++编写植物大战僵尸
- SQL 分组求和+行转列
- matlab 遗传算法 ga函数,matlab遗传算法ga函数
- 信息差赚钱2020年怎么做?看完全部就会了!
- scala reduce和Fold
- 使用结构方程模型需要知道的那些事(理论篇)
- 第三方支付的商户订单号和支付交易号
- 文件损坏打不开怎么办?excel文件修复,看看这些解决办法
- R语言与克朗巴哈alpha系数
- 令人匪夷所思的 Magic 之魔数,你真的不会
- MDS(multidimensional scaling)多维尺度分析
- 2021教师资格考试结构化面试:家长说你教的不好,怎么办?
- 第十四章第五节:Java集合框架之优先级队列PriorityQueue(堆)
- Win10 蓝屏CRITICAL_PROCESS_DIED值为 0x000000EF
- Day44-45_Hive高级
- 360buy android 首页打开网络监控数据分析
热门文章
- html下拉框动态增加成员,JavaScript实现左右下拉框动态增删示例
- 组件数据更新页面未更新的解决方法
- 球球英雄服务器维护中,球球英雄有效兑换码20208月未过期
- 动漫人物的身体结构怎么画,动漫人物全身画法教程
- 提高生产力和效率的小方法
- 机器学习-chapter1机器学习的生态系统
- F1巴林揭幕阿隆索拔头筹 雷克南一次进站成就季军
- Nextcloud集成Active Directory(AD)LDAP用户身份验证
- linux让文件所有用户可以读,Linux 下用户(andy)创建的文件可让特定用户(alice)修改...
- 葵司JAVA25_Linux中的硬链接和软链接