由于现在好多公司都在实行办公无纸化操作,所以一般都是使用excel以及word来办公,本文是公司项目中使用excel文件模板生成对应的文件:
首先,需要导入一下几个包:
接下来就是具体的代码:
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.swing.JOptionPane;
import net.sf.jxls.exception.ParsePropertyException;
import net.sf.jxls.transformer.XLSTransformer;
/**
* 利用模板导出excel文件
* @typename:XLSTransformerExport
* @author: FishRoad
* @since: 2015年8月24日 下午1:35:29
*
*/
public class XLSTransformerExport {
public static void main(String []args){
//组织数据
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> m1 = new HashMap<String,Object>();
m1.put("PRONAME", "项目1");
m1.put("PLANTYPE", "计划1");
m1.put("PROTYPE", "类别1");
Map<String, Object> m2 = new HashMap<String,Object>();
m2.put("PRONAME", "项目2");
m2.put("PLANTYPE", "计划2");
m2.put("PROTYPE", "类别2");
list.add(m1);
list.add(m2);
Map<String, Object> para = new HashMap<String, Object>();
para.put("result", list);
XLSTransformer transformer = new XLSTransformer();
//String temppath = "C:\\Users\\Administrator\\Documents\\测试模板.xlsx";
//模板路径,如果用的模板是xlsx,则生成的文件类型也必须为xlsx类型,否则由于格式不对,会打不开文件
String temppath = "C:\\Users\\Administrator\\Documents\\测试模板_xls.xls";
//输出文件路径,以及路径名称
String exportpath =UtilTools.getDirPath("测试结果_xls.xls", new File("C:\\Users\\Administrator\\Documents"));
System.out.println(exportpath);
try {
//利用transformXLS来输出文件
transformer.transformXLS(temppath, para,exportpath);
//生成文件后提示是否立即打开该文件
if(JOptionPane.showConfirmDialog(null, "导出成功,是否打开文件?")==0){
UtilTools.openDirFile(exportpath);
}
} catch (ParsePropertyException e) {
System.out.println("失败!");
} catch (IOException e) {
System.out.println("失败!");
}
}
}
用到的工具类:
/**
* 保存文件的时候指定文件名和文件的保存路径
* @param filename
* @param path
* @return
*/
public static String getDirPath(String filename, File path) {
JFileChooser parseDir = new JFileChooser();
parseDir.setCurrentDirectory(path);
parseDir.setAcceptAllFileFilterUsed(false);
parseDir.setSelectedFile(new File(filename));
int result = parseDir.showSaveDialog(null);
if (result == JFileChooser.APPROVE_OPTION) {
return parseDir.getSelectedFile().getAbsolutePath();
} else {
return "";
}
}
/**
* 打开文件所在的目录
*
* @param destFileName
* @throws IOException
*/
public static void openDirFile(String destFileName) throws IOException {
File file = new File(destFileName);
java.awt.Desktop.getDesktop().open(file);
//
}
模板样式如下:
到此,整个项目就基本完成,然后运行结果如下:
今天的文章如何导出模板_如何把导出的文件转换成表格分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/76501.html