文件下载,带转码->pdf->swf
private String upload = "保存的路径";
//文件下载
public String download() {
//初始化
this.initContext();
String apath = request.getSession().getServletContext().getRealPath(upload);
File af = new File(apath);
// 假设没有这个目录。就创建个目录
if (!af.exists()) {
af.mkdirs();
}
String filenewaddress = request.getSession().getServletContext().getRealPath(upload);
System.out.println("開始下载,请稍后……");
URL urlfile = null;
HttpURLConnection httpUrl = null;
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
// 把下载地址赋给urlfile
urlfile = new URL(fileoldaddress);
// 打开下载 URL 引用的资源的通信链接(假设尚未建立这种连接)
httpUrl = (HttpURLConnection) urlfile.openConnection();
// 建立与指定socket的连接
httpUrl.connect();
// 提供一个默认的文件名称
String context = httpUrl.getHeaderField("Content-Disposition");
// 推断context是否为空
if (context == null) {
// 取地址最后的/后面的字符当做名字
filename1 = fileoldaddress.substring(fileoldaddress
.lastIndexOf("/") + 1, fileoldaddress.length());
filenewaddress = filenewaddress + "\\" + filename1;
} else {
filename1 = context.substring(context.lastIndexOf("=") + 1,
context.length());
filenewaddress = filenewaddress + "\\" + filename1;
}
// 把本地保存地址赋给f
File f = new File(filenewaddress);
bis = new BufferedInputStream(httpUrl.getInputStream());
bos = new BufferedOutputStream(new FileOutputStream(f));
int len = 2048;
byte[] b = new byte[len];
while ((len = bis.read(b)) != -1) {
bos.write(b, 0, len);
}
bos.flush();
bis.close();
httpUrl.disconnect();
System.out.println("下载完毕。");
} catch (Exception e) {
System.out.println("无效下载地址,错误信息:" + e.getMessage());
this.msg = "下载失败!";
this.success = false;
} finally {
try {
if (bis != null)
bis.close();
if (bos != null)
bos.close();
} catch (IOException e) {
System.out.println("系统错误,错误信息:" + e.getMessage());
System.out.println("请联系管理员!");
}
}
// 下载到本地结束
// 取绝对路径+名
String filepath = apath + "\\" + filename1;
System.out.println(filepath);
// 转格式
DocConverter d = new DocConverter(filepath);
d.conver();
// 转格式结束
return "success";
}
转码须要用到两个软件!
Apache_OpenOffice_incubating_3.4.1_Win_x86_install_zh-CN
swftools
必须先启动这两个软件,才干转码
文件下载,带转码->pdf->swf的更多相关文章
- Plupload上传实例《模仿微云上传实例》,带源码
Plupload上传实例<模仿微云上传实例>,带源码,作者:鱼塘总裁 如有疑问,加群交流:646104701 一.实例截图 1.上传过程 2.上传成功 3.上传失败 4.最小化 二.所需文 ...
- 大话设计模式(带目录完整版).pdf等
点击进入百度网盘 大话设计模式(带目录完整版).pdf等 保存至网盘下载二维码举报 赞(0)| 评论 | 分享至 分享时间:2014-04-01 11:02 | 467次浏览 130次下载 81次保存 ...
- PDF解决方案(3)--PDF转SWF
相关专题链接 PDF解决方案(1)--文件上传 PDF解决方案(2)--文件转PDF PDF解决方案(3)--PDF转SWF PDF解决方案(4)--在线浏览 前言:上一篇中介绍了上传的文件转PDF, ...
- swftools 将pdf转换swf常见问题说明
swftools将PDF转成swfSWFTools提供了一系列将各种文件转成swf的工具: font2swf.exe gif2swf.exe jpeg2swf.exe pdf2swf.exe png2 ...
- Orchard CMS中如何打包不带源码的模块
在Orchard CMS的官网已经提供了文档说明如何打包,但是如果使用它的打包方式,打好的nuget包是带源代码的.如果是为开源系统写模块,不需要关注源代码是否可见.但是如果是用Orchard CMS ...
- 转】MyEclipse使用总结——使用MyEclipse打包带源码的jar包
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4136303.html 感谢! 平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不 ...
- MyEclipse使用总结——使用MyEclipse打包带源码的jar包
平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不到jar包里面的类的源码了,所以也就无法调试,要想调试,那么就只能通过关联源代码的形式,这样或多或少也有一些不方便,今 ...
- c# winform 中的 工具栏自动隐藏 splitter用法 带源码
c# winform 中的 工具栏自动隐藏 splitter用法 带源码 代码下载地址 http://download.csdn.net/detail/simadi/7649313
- 【百度地图API】多家地图API内存消耗对比测验(带源码)
原文:[百度地图API]多家地图API内存消耗对比测验(带源码) 任务描述: 啊,美妙的春节结束了.酸奶小妹和妈妈的山西平遥之旅也宣告成功!距离平遥古城7km,有一个同样身为“世界文化遗产”的寺庙,叫 ...
- 10个带源码的充满活力的Web设计教程
10个带源码的充满活力的Web设计教程 2013-08-02 16:47 佚名 OSCHINA编译 我要评论(0) 字号:T | T Web设计师必须了解各种各样的Web设计风格,这才能让他或者她在设 ...
随机推荐
- java 线程池用法
public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, ...
- 杀掉linux所有进程的命令
ps -ef|grep 'opt/*/tomcat_ssi'|grep -v "grep"|awk '{print $2}'|xargs kill -9
- 方形布局SquareLayout
public class SquareLayout extends RelativeLayout { public SquareLayout(Context context, AttributeSet ...
- MyEclipse汉化后问题
今天为了教学生如何汉化MyEclipse10.7,所以讲IDE汉化了一下. 个人还是喜欢用英文版,所以就将D:\MyEclipse\MyEclipse 10目录下的配置文件myeclipse.ini里 ...
- ajax+FormData+javascript 实现无刷新表单注册
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- linux入门。删除不用到内核,为boot分区释放空间
在终端中输入如下命令: dpkg --get-selections|grep linux-image 这时会列出系统中所有到内核. 你可以使用 uname -a 查看你当前使用到内核. 然后用 sud ...
- Remoting通讯实例
Remoting通讯可以实现不同应用程序域之间的通信(可以为一台机器不同程序,也可以不同机器上的不同程序) 实例步骤: (1)编写透明代理类 新建一个类库,命名空间:MyRemoting 在该类库中建 ...
- Jquery获取背景图片src路径
例如获取body的背景: Jquery代码如下: var back = $('body').css('backgroundImage'); back.substring(start,end); //截 ...
- discuz php判断是手机访问还是电脑访问网站
首先在模块处填入代码: //手机网页跳转 //如果检测到访问的浏览器为下列一个指定的移动浏览器 则返回true function is_mobile(){ $regex_match="/(n ...
- 体验Lua
想用之和NGINX结合,终结公司混乱的NGINX配置 玩起来先,感觉很精简,很实用哟. print("hello world") a={,} b=a print(a==b,a~=b ...