String path = ServletActionContext.getServletContext().getRealPath(
"image");// 写到指定路径
System.out.println(path);
File file = new File(path);
// 判断指定的路径下是否有urlNameFileName,如果没有,自动创建
if (!file.exists()) {
file.mkdirs();
}
try {
FileUtils.copyFile(urlName, new File(file, urlNameFileName));
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("上传文件的名称:" + urlName + "上传的路径:" + path + "上传的类型:"
+ urlNameContentType);
System.out.println(urlNameFileName);
String name = urlNameFileName;
System.out.println(name);
int isa = name.lastIndexOf(".");
System.out.println(isa);
String sub = name.substring(isa + 1);
System.out.println(sub);
if (!"xls".equals(sub)) {
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
try {
PrintWriter out = response.getWriter();
out
.println("<script type='text/ java script' language=' javascript '>");
out.println("alert('对不起,您选择的文档不符合上传格式,请重新选择')");
out.println("history.go(-1)");
out.println("</script>");
} catch (IOException e) {
e.printStackTrace();
}
return null;
}else
{
InputStream is = new FileInputStream(path + "/" + name);
jxl.Workbook rwb = Workbook.getWorkbook(is);
Sheet sheet = rwb.getSheet(0);
int rowss = sheet.getRows();
int cols = sheet.getColumns();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat df1 = new SimpleDateFormat("hh:mm");
for (int i = 2; i < rowss; i++) {
Cell mediaName=sheet.getCell(0, i);
Detectingtable de=new Detectingtable();
String n=mediaName.getContents();
de.setMovieName(n);
System.out.println(de.getMovieName());
if (null!=n && !"".equals(n)) {
List<CrLawusebasic> listbasic=this.crlawusebasicBizImpl.loadLawusebasicByName("name",n);
if (null!=listbasic && listbasic.size()>0) {
for (CrLawusebasic crLawusebasic : listbasic) {
haveList.add(crLawusebasic);
}
}else
{
deteList.add(de);
}
}
}
super.getSession().setAttribute("havelist", haveList);
for (int i = 0; i < haveList.size(); i++) {
String n=df.format(haveList.get(i).getCpstartdate());
String m=df.format(haveList.get(i).getCpenddate());
haveList.get(i).setCpStartdate(n);
haveList.get(i).setCpEnddate(m);
}
super.getSession().setAttribute("deteList", deteList);
System.out.println(deteList.size());
System.out.println(deteList.get(0).getMovieName());
}
/*if(null!=haveList){
haveList.clear();
}*/
super.setMessage("true");
return SUCCESS;
/* HttpServletResponse response = ServletActionContext.getResponse();
String msg = "{success:true}";
response.getWriter().print(msg);
return NONE; */
}
导出代码:
List datas = null;
datas = haveList;
// 导出execl操作
// 创建流对象
ByteArrayOutputStream os = new ByteArrayOutputStream();
// 创建excel对象
WritableWorkbook wbook;
try {
wbook = Workbook.createWorkbook(os);
// 标题
String tmptitle = "电影信息";
// sheet名称
WritableSheet wsheet = wbook.createSheet(tmptitle, 0);
// 设置excel中字体的样式
WritableFont wfont = new WritableFont(WritableFont.ARIAL, 16,
WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,
Colour.BLACK);
// 单元格对象
WritableCellFormat wcfFC = new WritableCellFormat(wfont);
// wcfFC.setBackground(Colour.AQUA);
// 设置排列方式
wcfFC.setAlignment(Alignment.CENTRE);
// 设置单元的lable
wsheet.addCell(new Label(1, 0, tmptitle, wcfFC));
// 设置字体样式
wfont = new jxl.write.WritableFont(WritableFont.ARIAL, 14,
WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,
Colour.BLACK);
// 单元格设置样式
wcfFC = new WritableCellFormat(wfont);
wsheet.addCell(new Label(0, 2, "序号"));
wsheet.addCell(new Label(1, 2, "电影名称"));
wsheet.addCell(new Label(2, 2, "类型"));
wsheet.addCell(new Label(3, 2, "编号"));
wsheet.addCell(new Label(4, 2, "音乐名称"));
wsheet.addCell(new Label(5, 2, "权利开始时间"));
wsheet.addCell(new Label(6, 2, "权利结束时间"));
wsheet.addCell(new Label(7, 2, "权利属性"));
for (int i = 0; i < datas.size(); i++) {
CrLawusebasic entity = (CrLawusebasic) datas.get(i);
//序号
wsheet.addCell(new Label(0, i + 3, entity.getId() + ""));
//电影名称
wsheet.addCell(new Label(1, i + 3, entity.getName() + ""));
//类型
wsheet.addCell(new Label(2, i + 3, entity.getCptype()+ ""));
//编号
wsheet.addCell(new Label(3, i + 3, entity.getContactnum() + ""));
//音乐名称
wsheet.addCell(new Label(4, i + 3, entity.getThething()+ ""));
//权利开始日期
wsheet.addCell(new Label(5, i + 3, entity.getCpstartdate() + ""));
//权利结束日期
wsheet.addCell(new Label(6, i + 3, entity.getCpenddate() + ""));
//权利属性
wsheet.addCell(new Label(7, i + 3, entity.getCpdesc() + ""));
}
wbook.write(); // 写入文件
wbook.close();
os.close(); // 关闭流
} catch (Exception e) {
e.printStackTrace();
}
fileName = "law";
excelStream = new ByteArrayInputStream(os.toByteArray());
return SUCCESS;
java导出Excel例子
//在service层写的,在action直接调用此方法就行了
//导出Excel
public boolean exportExcel(HttpServletResponse response,List<cityinfo> list)
{
try
{
OutputStream os = response.getOutputStream();// 取得输出流
response.reset();// 清空输出流
response.setHeader("Content-disposition", "attachment; filename=fine.xls");// 设定输出文件头
response.setContentType("application/msexcel");// 定义输出类型
WritableWorkbook wbook = Workbook.createWorkbook(os); // 建立excel文件
String tmptitle = "财务报表"; // 标题
WritableSheet wsheet = wbook.createSheet(tmptitle, 0); // sheet名称
// 设置excel标题
WritableFont wfont = new WritableFont(WritableFont.ARIAL, 16,WritableFont.BOLD,
false,UnderlineStyle.NO_UNDERLINE,Colour.BLACK);
WritableCellFormat wcfFC = new WritableCellFormat(wfont);
wcfFC.setBackground(Colour.AQUA);
wsheet.addCell(new Label(1, 0, tmptitle, wcfFC));
wfont = new jxl.write.WritableFont(WritableFont.ARIAL, 14,WritableFont.BOLD,
false, UnderlineStyle.NO_UNDERLINE,Colour.BLACK);
wcfFC = new WritableCellFormat(wfont);
// 开始生成主体内容
wsheet.addCell(new Label(0, 2, "城市代码"));
wsheet.addCell(new Label(1, 2, "城市名"));
for(int i=0;i<list.size();i++) <br="">{
wsheet.addCell(new Label(0, i+3, list.get(i).getCityid())); //数据库的城市代码字段
wsheet.addCell(new Label(1, i+3, list.get(i).getName())); //数据库的城市名字段
}
// 主体内容生成结束
wbook.write(); // 写入文件
wbook.close();
os.close(); // 关闭流
return true;
}
catch(Exception ex)
{
ex.printStackTrace();
return false;
}
}