java导出word选择路径 java导出文件选择路径
java导出文件时让用户选择路径怎么弄?
使用保存文件对话框: /** * 保存 */ private void saveFile(){ JFileChooser dialog = new JFileChooser(); dialog.setDialogTitle("另存为"); dialog.setFileSelectionMode(JFileChooser.FILES_ONLY); dialog.setDialogType(JFileChooser.SAVE_DIALOG); dialog.setFileFilter(new TextFileFilter("*.txt", "文本文档(*.txt)")); int result = dialog.showSaveDialog(this); if(result == JFileChooser.APPROVE_OPTION){ File file = dialog.getSelectedFile(); fileName = file.getAbsolutePath(); //得到文件全名 ... } }附文本类型过滤器:import java.io.File;import java.util.ArrayList;import javax.swing.filechooser.FileFilter;/** * 设置文件打开对话框的文件过滤器 * @author developer */public class TextFileFilter extends FileFilter { private ArrayList extensions = new ArrayList(); private ArrayList descriptions = new ArrayList(); public TextFileFilter(){ super(); } public TextFileFilter(String extension, String description) { super(); this.extensions.add(extension); this.descriptions.add(description); } @Override public boolean accept(File pathname) { if (pathname != null) { if (pathname.isDirectory()) { return true; } String extension = getExtension(pathname); for(int i=0; i 0 && i < filename.length() - 1) { return filename.substring(i).toLowerCase(); } } return null; } @Override public String getDescription() { return descriptions.get(descriptions.size()-1); }}
Java 文件输出路径选着
导出时自由选择路径的代码如下: 1、后台输出Excel文件代码: OutputStream output = response.getOutputStream(); response.reset(); response.setHeader("Content-disposition", "attachment; filename=" + path); response.setContentType("Content-Type:application/vnd.ms-excel "); wb.write(output); output.close(); 2、前端代码: window.open("getExcelList","_blank"); 导出excel数据 * @param id * @param m * @return */ @RequestMapping("/exportExcel") public void exportExcel(@RequestParam("id") Integer id, Model m,HttpServletRequest req, HttpServletResponse resp) { try { ExportExcel ex = new ExportExcel(); String[] headers = {"最迟还款日", "还款金额","剩余几天","逾期几天", "罚息","是否垫付","状态","是否发放收益"}; List dataset = new ArrayList(); List plans = this.planService.getListByLoan(id); for (int i = 0; i = 0 && plans.get(i).getStatus() == 0){ p2pLoanPlanVo.setRepayDays(plans.get(i).getRepayDays()); }else{ p2pLoanPlanVo.setRepayDays(0); } if(plans.get(i).getRepayDays() < 0 && plans.get(i).getStatus() == 0){ p2pLoanPlanVo.setRepayYqDays(-plans.get(i).getRepayDays()); }else{ p2pLoanPlanVo.setRepayYqDays(0); }
怎么用java导出word文档
5、Word等文件、插入图片、插入表格等。
填充数据到表格中读取表格数据 ,1.1版增强的功能: 指定文本样式,指定表格样式,不能设置样式。
3:Java2word是一个在java程序中调用 MS Office Word 文档的组件(类库)。
该组件提供了一组简单的接口,以便java程序调用他的服务操作Word 文档。
这些服务包括: 打开文档、新建文档。
Word从2003开始支持XML格式,大致的思路是先用office2003或者2007编辑好word的样式。
经测试这样方式生成的word文档完全符合office标准,样式。
如此,则可动态排版word文档、插入表格,在书签处插入文字,目前只能实现一些简单文件的操作,然后另存为xml,将xml翻译为FreeMarker模板,最后用java来解析FreeMarker模板并输出Doc、查找文字、替换文字。
他的excel处理很强大,对于word还局限于读取、Html文件转化为PDF文件。
功能强大,但是处理样式有点缺陷,简单的导出可以使用。
6:用XML做就很简单了java导出word大致有6种解决方案:1:Jacob是Java-COM Bridge的缩写。
是一种不错的解决方案。
4:iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。
通过iText不仅可以生成PDF或rtf的文档,而且可以将XML。
使用Jacob自带的DLL动态链接库,并通过JNI的方式实现了在Java平台上对COM程序的调用。
DLL动态链接库的生成需要windows平台的支持。
该方案只能在windows平台实现,是其局限性。
2:Apache POI包括一系列的API,它们可以操作基于MicroSoft OLE 2 Compound Document Format的各种格式文件,可以通过这些API在Java中读写Excel,该方案实现简单,它在Java与微软的COM组件之间构建一座桥梁,插入文字、插入图片:JSP输出样式...
Java 导出 Word 表格有什么好的办法
1-apache的POI,此方法对Excel的导出做的很好,目前对Word的导出方面的功能尚未完全。
2-纯JavaScript脚本实现。
主要通过客户端调用本机Office组件来实现。
3-在JSP页面引入头文件实现。
纯JavaScript脚本实现细节方面大体是创建一个word组件ActiveXObject("Word.Application"),用js通过表ID取得表内容然后保存到word,要注意的是js实现有很多不好的地方,例如Internet选项需要把ActiveX空间全部启用,安全级别设置为中。
这样的话岂不是每台机器都要配置一下。
其次每次生成word文档以后弹出对话框(无法保存此文件,因为它已在别处打开(C:\...\STARTUP\Powerword.dot)),出现此问题就需要把C:\Documents and Settings\当前用户名\Application Data\Microsoft\Word\STARTUP下的Powerword.dot文件删除,每次遇到此问题就需要删除文件来解决,十分不方便。
JSP页面引入来实现Word保存就方便多了,但是也有不足的地方,首先如果需要引入如果需要下载的话就引入其实如果大家用框架做就方便多了,比如Struts2。
在Action里直接写如下代码:if(out!=null){String fileName="";fileName+="评价报告.doc";try {HttpServletResponse response = ServletActionContext.getResponse();response.setHeader("Content-disposition","attachment; filename="+new String(fileName.getBytes("GB2312"), "8859_1"));} catch (UnsupportedEncodingException e) {e.printStackTrace();}out是jsp页面表单元素,一个button,用于提交表单到相应Action进行Word下载。
Action设置jsp页面头文件。
这样每次点击button就可以把相应jsp页面的内容保存到Word中并且支持下载,Word中内容并且是可编辑状态。
不足的地方在于由于表内容是动态生成,有的需要先查看在下载Word,就需要另外建立一个新JSP页面进行Word下载,当然首先要在struts.xml里配置好页面转向。
新建立的页面传值同查看页面要保持一样。
-