文件下载,带转码->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设计风格,这才能让他或者她在设 ...
随机推荐
- Spring 3.0就这么简单读书笔记
一般情况下,spring容器中的大部分Bean都是单实例的,所以一般无须通过@Repository.@Service.@Component等注解的value属性为Bean指定名称,也无须使用@Qual ...
- mysql索引和缓存
mysql有缓存,缓存的设置见[转]MySql查询缓存机制
- (转)PHP 的 __FILE__ 常量
今天碰到了PHP的常量__FILE__的问题了. 在网上查了一下.总结了以下规律. dirname(__FILE___) 函数返回的是脚本所在在的路径. 比如文件 b.php 包含如下内容: < ...
- innodb的innodb_buffer_pool_size和MyISAM的key_buffer_size
一. key_buffer_size 对MyISAM表来说非常重要. 如果只是使用MyISAM表,可以把它设置为可用内存的 30-40%.合理的值取决于索引大小.数据量以及负载 -- 记住,MyISA ...
- [<DDGuessYouLIkeModel 0x7c99faf0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key star.
出现这个提示是由于以下原因造成: 这里我用到了MJExtension将字典转为模型,但再转为模型的时候,出现这个提示,原因就是因为NSInteger后面多一个一个“*” @property (nona ...
- 拿起cl.exe,放下IDE
笔者在这里介绍一种使用cl.exe编译源文件的方法,可以手动执行编译过程而不再依赖IDE,此外,笔者还介绍一些使用cl.exe编译简单源代码的方式. cl.exe是windows平台下的编译连接程序, ...
- ie6,7下js动态加载图片不显示错误
ie6,7下js动态加载图片不显示错误 先描述一下出现这种匪夷所思bug的背景: 我在页面加载的时候加载一堆小缩略图,<a href="javascript:void(0);" ...
- rtmp协议介绍
概述: •tcp建立连接. •rtmp握手. •客户端与服务器对建立rtmp连接达成一致. •创建rtmp流 •客户端与服务器对play或者Publish达成一致. •客户端开始传送数据到服务器. • ...
- 自定义窗口 mfc
typedef struct _WNDCLASS { UINT style; //制定窗口的类型 WNDPROC lpfnWndProc; int cbClsExtra; //额外的数值 int cb ...
- Autofact 的使用
资料: http://www.cnblogs.com/linhan/p/4298971.html --其他博友 http://autofac.org/# --官网 http://efmvc.codep ...