导航:首页 > 编程语言 > java下载表格

java下载表格

发布时间:2022-09-05 13:53:31

java如何通过js方法下载页面上的表格

ajax获取一个页面的所有代码,然后处理就行了。

⑵ java xls下载方法

String 文件名 = 文件路径.substring(getWJLJ().lastIndexOf(File.separator)+1);

response.setContentType("appication/pdf");//下载东西的格式
response.setHeader("Content-disposition", "attachment;文件名="+文件名);
try {
FileInputStream fis = new FileInputStream(文件路径);
java.io.OutputStream os = response.getOutputStream();
byte[] b = new byte[1024];
int len = 0;
while((len = fis.read(b))!=-1){
os.write(b, 0, len);
}
os.flush();
os.close();
fis.close();
思路就是,获取文件名字和文件路径,知道文件格式,创建IO进行下载。

⑶ java写了一个下载excel的功能,我想把用户下载的模版的所有单元格都变成文本格式。该如何写呢

public void export(List<PSbLnode> li, String dateString,String[] title) throws WriteException, IOException {
// 准备设置excel工作表的标题
// 创建Excel工作薄
WritableWorkbook wwb = null;
try {

// 输出的excel的路径
String filePath1 = Const.pathStr+Const.pathStr4+Const.pathStr3;
File file = new File(filePath1);
if(!file.exists()){
file.mkdir();
}
String filePath=filePath1+Const.pathStr4+Const.pathStr6+dateString+Const.pathStr5;
// 新建立一个jxl文件,即在C盘下生成testJXL.xls
OutputStream os = new FileOutputStream(filePath);
wwb = Workbook.createWorkbook(os);
// 添加第一个工作表并设置第一个Sheet的名字
WritableSheet sheet = wwb.createSheet("设备清单", 0);
Label label;
for (int i = 0; i < title.length; i++) {
// Label(x,y,z) 代表单元格的第x+1列,第y+1行, 内容z
// 在Label对象的子对象中指明单元格的位置和内容
label = new Label(i, 0, title[i]);
// 将定义好的单元格添加到工作表中
sheet.addCell(label);
}
for (int i = 0; i < li.size(); i++) {
int j = 0;
j = i + 1;
//填充单元格
//获取区域名称
label = new Label(0, j, li.get(i).getQyName());
sheet.addCell(label);
//获取区域名称
label = new Label(1, j, li.get(i).getJzName());
sheet.addCell(label);
//获取设备名称
label = new Label(2, j, li.get(i).getLnodeName());
sheet.addCell(label);
// //获取设备类型名称
label = new Label(3, j, li.get(i).getSbxh());
sheet.addCell(label);
//获取运行状态
label = new Label(4, j, li.get(i).getYxzh());
sheet.addCell(label);
//获取删除状态
label = new Label(5, j, li.get(i).getDeleteFlag());
sheet.addCell(label);
//获取启用状态
label = new Label(6, j, li.get(i).getQyzt());
sheet.addCell(label);
//获取设备投运日期
label = new Label(7, j, li.get(i).getSbtyri());
sheet.addCell(label);
//获取使用年限
jxl.write.Number numb1 = new jxl.write.Number(8, j, li.get(i).getSynx());
sheet.addCell(numb1);
//获取区域名称
label = new Label(9, j, li.get(i).getAddUser());
sheet.addCell(label);
//获取区域名称
label = new Label(10, j, li.get(i).getUpdUser());
sheet.addCell(label);
//获取区域名称
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String newdate = sdf.format(li.get(i).getUpdTime());
label = new Label(11, j, newdate);
sheet.addCell(label);
//获取区域名称
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");
String newdate2 = sdf2.format(li.get(i).getAddTime());
label = new Label(12, j, newdate2);
sheet.addCell(label);
//获取区域名称
label = new Label(13, j, li.get(i).getZcbh());
sheet.addCell(label);
//获取区域名称
label = new Label(14, j, li.get(i).getSbcs());
sheet.addCell(label);
//获取区域名称
jxl.write.Number numb2 = new jxl.write.Number(15, j, li.get(i)
.getSbll());
sheet.addCell(numb2);
//获取区域名称
label = new Label(16, j, li.get(i).getRldw());
sheet.addCell(label);
//获取区域名称
label = new Label(17, j, li.get(i).getWxghjl());
sheet.addCell(label);
}
// 写入数据
wwb.write();
} catch (Exception e) {
e.printStackTrace();
}finally{
// 关闭文件
wwb.close();
}
}

Const文件:
/**路径:C盘*/
public static String pathStr = "C:";
/**路径://*/
public static String pathStr2 = "//";
/**文件夹:workspace*/
public static String pathStr3 = "exportFile";
/**文件名:world*/
public static String pathStr6 = "Equipment";
/**路径:/*/
public static String pathStr4 = "/";
/**路径:.xls*/
public static String pathStr5 = ".xls";

⑷ Java导出execl并下载

struts2 Action的类中代码
public void createExecl() throws WriteException, IOException{
WritableWorkbook book=null;
@SuppressWarnings("unused")
WritableSheet sheet=null;
try{
String path="C:\\test.xls";
File file=new File(path);
//打开文件
book = Workbook.createWorkbook(file);
// 生成名为“第一页”的工作表,参数0表示这是第一页
sheet = book.createSheet( " 第一页 " , 0 );
// 在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
}catch(Exception e){
System.out.println(e);
}finally{
//写入数据并关闭文件
book.write();
book.close();
}
try {
String path="C:\\test.xls";
File file=new File(path);
// Excel获得文件
Workbook wb = Workbook.getWorkbook(file);
// 打开一个文件的副本,并且指定数据写回到原文件
WritableWorkbook book2 = Workbook.createWorkbook(file, wb);
// 添加一个工作表
//WritableSheet sheet = book.createSheet( " 第二页 " , 1 );
//WritableSheet sheet = book.getSheet(0);
WritableSheet sheet2=book2.getSheet(0);
// 在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
// 以及单元格内容为test
Label label=null;
Label label2=null;
label=new Label(0,0,"计费Id");
sheet2.addCell(label);
label=new Label(1,0,"主动呼叫号码");
sheet2.addCell(label);
label=new Label(2,0,"被动呼叫号码");
sheet2.addCell(label);
label=new Label(3,0,"计费开始时间");
sheet2.addCell(label);
label=new Label(4,0,"计费结束时间");
sheet2.addCell(label);
label=new Label(5,0,"计费单价");
sheet2.addCell(label);
label=new Label(6,0,"计费总金额");
sheet2.addCell(label);
label=new Label(7,0,"扣费号码");
sheet2.addCell(label);
label=new Label(8,0,"活动名称");
sheet2.addCell(label);
label=new Label(9,0,"备注");
sheet2.addCell(label);
int j=1;
List<Object> list=baseManager.findByHql("from TalkInformationBean tb left join fetch tb.activeBean order by tb.talkId desc tb.talkId");
Iterator<Object> it=list.iterator();
while(it.hasNext()){
talkInfo=(TalkInformationBean)it.next();
label2 = new Label( 0 , j , talkInfo.getTalkId().toString() );
sheet2.addCell(label2);
label2 = new Label( 1 , j , talkInfo.getInitiMobile().toString() );
sheet2.addCell(label2);
label2 = new Label( 2 , j , talkInfo.getPassMobile().toString() );
sheet2.addCell(label2);
label2 = new Label( 3 , j , talkInfo.getStartTime().toString() );
sheet2.addCell(label2);
label2 = new Label( 4 , j , talkInfo.getEndTime().toString() );
sheet2.addCell(label2);
label2 = new Label( 5 , j , talkInfo.getPrice().toString() );
sheet2.addCell(label2);
label2 = new Label( 6 , j , talkInfo.getTotalMoney().toString() );
sheet2.addCell(label2);
label2 = new Label( 7 , j , talkInfo.getDectMobile().toString() );
sheet2.addCell(label2);
if(talkInfo.getActiveBean()==null){
label2 = new Label( 8 , j , null);
}else{
label2 = new Label( 8 , j , talkInfo.getActiveBean().getActiveName().toString());
}
sheet2.addCell(label2);
label2 = new Label( 9 , j , talkInfo.getRemark().toString() );
sheet2.addCell(label2);
j++;
}
// 将定义好的单元格添加到工作表中
book2.write();
book2.close();
} catch (Exception e) {
e.printStackTrace();
}
}

public InputStream getDownloadFile() {
File file = new File("C:\\test.xls");
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return fis;
}
/**
* 查询所有通话记录
*
* @param
*
* @return
* String success --> 欢迎页面 fail --> 错误页面
* @throws IOException
* @throws WriteException
* @throws
* HRException
*/
@SuppressWarnings("unchecked")
public String toexport() throws WriteException, IOException{
this.createExecl();
return "success";
}
struts.xml代码
<action name="toexport" class="talkAction" method="toexport">
<result name="success" type="stream">
<param name="contentType">application/vnd.ms-excel</param>
<param name="contentDisposition">attachment;filename="test.xls"</param>
<param name="inputName">downloadFile</param>
</result>
<result name="TALKINFO">/talkInfo/talkInfo.jsp</result>
</action>
JSP页面代码
<input class="input_back" type="button" name="Submit0" value="导出数据"onclick="location.href='toexport.action'"/></td>

⑸ java 将页面内容写入excel文件中并可以将其下载到本地任意位置

java本身要生成excel文件必然是在后台做的,通过poi库生成excel文件并制作表格。
无法直接通过网页保存生成excel。
至于下载到本地任意位置,也是后台生成了excel文件发送到前台(浏览器),由用户选择要存在哪儿,不能直接存储(这是web沙箱限制,不允许网页直接访问本地硬盘,不然你想想,如果你打开一个网页,网页代码可以任意访问你的硬盘,你还敢开网页吗)。
要绕过沙箱限制必须装插件,也就是,你必须开发一个com或plugin插件,可以访问本地硬盘,但这需要用户手工安装(比如flash的插件,你之所以能用网页看flash是因为装了它的插件,但这是你手工装的,它不能绕过你直接给你装,它必须询问你行不行,你要手工点了OK,才能装)

⑹ 请问下,我想用java实现下载excel表格,思路是先在临时文件里生成临时excel文件,但是不知

你的意思是 导出excel表格吧。 导出的时候会创建临时文件 但是导出后要删除临时文件吧

⑺ Java项目如何将下载的excel表格既有中文字段又有英文字段

据我猜测你们这个应该是使用统一的导出形式,就是数据库字段什么样,导出的列名就是什么样。如果是这样的话就要改通用的方法

  1. 给实体类加注解,使用注解给属性名加别名

  2. 如果是直接从数据库查出来的可以改sql,sql的每个列都加上别名(你想要的中文名称)

  3. 公共的方法改的时候要注意不要影响其他人使用

⑻ java excel表格下载,简单问题,高手帮帮忙,谢谢~!

测试服务器的安全级别高,调低就行了.

⑼ java中excel下载的文件打不开,提示报错内存溢出,超过excel最大容量

你是用的什么框架啊?

⑽ java如何将导出的excel下载到客户端

packagecom.mr;

importjava.io.IOException;
importjava.io.PrintWriter;

importjavax.servlet.ServletException;
importjavax.servlet.ServletOutputStream;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
/**
*利用Servlet导出Excel
*@authorCHUNBIN
*
*/
{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
doPost(request,response);
}

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
request.setCharacterEncoding("UTF-8");//设置request的编码方式,防止中文乱码
StringfileName="导出数据";//设置导出的文件名称
StringBuffersb=newStringBuffer(request.getParameter("tableInfo"));//将表格信息放入内存
StringcontentType="application/vnd.ms-excel";//定义导出文件的格式的字符串
StringrecommendedName=newString(fileName.getBytes(),"iso_8859_1");//设置文件名称的编码格式
response.setContentType(contentType);//设置导出文件格式
response.setHeader("Content-Disposition","attachment;filename="+recommendedName+""");//
response.resetBuffer();
//利用输出输入流导出文件
ServletOutputStreamsos=response.getOutputStream();
sos.write(sb.toString().getBytes());
sos.flush();
sos.close();
}
}
<%@pagelanguage="java"contentType="text/html;charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">
<title>导出Excel</title>
<scripttype="text/javascript">
functiontest(){
document.getElementById("tableInfo").value=document.getElementById("table").innerHTML;
}
</script>
<style>
body{font-family:宋体;font-size:11pt}
</style>
</head>
<body>
<formaction="<%=request.getContextPath()%>/servlet/ExportExcelServlet"method="post">
<spanid="table">
<tablebgcolor="#EEECF2"bordercolor="#A3B2CC"border="1"cellspacing="0">
<tr><th>学号</th><th>姓名</th><th>科目</th><th>分数</th></tr>
<tr><td>10001</td><td>赵二</td><td>高数</td><td>82</td></tr>
<tr><td>10002</td><td>张三</td><td>高数</td><td>94</td></tr>
<tr><td>10001</td><td>赵二</td><td>线数</td><td>77</td></tr>
<tr><td>10002</td><td>张三</td><td>线数</td><td>61</td></tr>
</table>
</span><br/>
<inputtype="submit"name="Excel"value="导出表格"onclick="test()"/>
<inputtype="hidden"id="tableInfo"name="tableInfo"value=""/>
</form>
</body>
</html>

以上代码来自网络:http://jtlyuan.iteye.com/blog/1322097

阅读全文

与java下载表格相关的资料

热点内容
韩国直播软件app叫什么名 浏览:916
军营训练不听教官的命令 浏览:258
v开头的音乐播放器是什么APP 浏览:117
单片机是怎么做出来的 浏览:315
博图怎么作为opc服务器 浏览:100
编译做题软件 浏览:293
桥梁检测pdf 浏览:685
化解压力的一种方法 浏览:680
路由器和DSN服务器有什么区别 浏览:547
android伸缩控件 浏览:851
androidm3u8缓存 浏览:236
imphp开源知乎 浏览:708
清除网络通配符dos命令 浏览:839
鸿蒙系统怎么快速换回安卓 浏览:714
pdf绿色虚拟打印机 浏览:215
androidtab框架 浏览:148
java转php的时间戳 浏览:640
编译libstdc依赖 浏览:659
清算法人与原法人的区别 浏览:411
家庭装修下载什么app软件 浏览:576