文件下载,带转码->pdf->swf

文件下载,带转码->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

必须先启动这两个软件,才干转码

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115691.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 向上取整方法 Math.ceil() 用法、源码分析

    java 向上取整方法 Math.ceil() 用法、源码分析刷题用到了,正好好好看看源码。

    2022年6月21日
    56
  • 十字路口的交通灯控制系统_十字路口红绿灯控制程序设计

    十字路口的交通灯控制系统_十字路口红绿灯控制程序设计十字路口交通信号灯控制系统主要任务开发平台设计思路主要任务设计一个用于十字路口的交通灯控制器,能显示十字路口东西、南北两个方向的红、黄、绿的指示状态;具有倒计时的功能,用两组数码管作为东西和南北方向的倒计时显示,**主干道直行(绿灯)60秒后,左转(绿灯)40秒;支干道直行(绿灯)45秒后,左转(绿灯)30秒,**在每次绿灯变成红灯的转换过程中,要亮黄灯5秒作为过渡。黄灯每秒闪亮一次。只考虑直行和左转车辆控制信号灯,右转车辆不受信号灯控制,南北向车辆与东西向车辆交替方向,同方向等待车辆应先方向直

    2022年9月25日
    4
  • 提取视频中的音频——python三行程序搞定「建议收藏」

    提取视频中的音频——python三行程序搞定「建议收藏」写在开头提取音频安装python包提取音频分析音频安装python包读取音频matplotlib画信号强度图librosa画信号强度图写在开头  身处数据爆炸增长的时代,各种各样的数据都飞速增长,视频数据也不例外。我们可以使用python来提取视频中的音频,而这仅仅需要安装一个体量很小的python包,然后执行三行程序!  语音数据在数据分析领域极为重要。比如可以分析语义、口音、根据人的情绪等等。可以应用于偏好分析、谎话检测等等。提取音频  需要..

    2022年5月12日
    46
  • 判断图同构大杀器—nauty算法

    判断两图是否同构是一个经典问题。nauty算法作为时下较为流行的主流算法,具有效率高,剪枝力度强等优势。当然,在某些特殊情况会失灵。虽然该算法的概念在上世纪80年代就提出来了,但发展至今,仍然是不可忽略的一种方法。本人翻遍了中文互联网,没找到详细相关介绍,在stackoverflow上边找到了一个问答,顺着帖子的回复找到了算法原作者自建的网站,如获至宝。再结合离散数学,看懂了这个算法的大致流程。总结如下:nauty算法:判断两个图是否同构。思路:①设置一套编号系统,给两个图进行编号,如果两个

    2022年4月8日
    35
  • html鼠标点击后变换样式,css鼠标样式(css鼠标点击切换样式)

    html鼠标点击后变换样式,css鼠标样式(css鼠标点击切换样式)css鼠标样式新浪博客代码个性化CSS鼠标样式网址完整问题:新浪博客代码个性化CSS鼠标样式网址好评回答:进入控制面版→维护首页内容→自定义空白面版→输入方框内代码,有的人给出的代码还要打字,我的不需要,其实在代码里加入一个就可以了,因为这个东西是HTML代码里的空格,相当于有内容了.—-…

    2022年5月30日
    45
  • qtreeview和qtreewidget_复杂的事情简单例子

    qtreeview和qtreewidget_复杂的事情简单例子#include<QtGui>classTreeView:publicQTreeView{public:TreeView();voiditerateOverItems();

    2022年8月6日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号