现在需求如下:
1.在服务端有EXCEL模板,在JSP页面上点击"编辑"按钮,即把模板下载至客户端本地并打开(过程中不要出现下载提示),完成编辑保存后,再点击JSP页面上的"保存"按钮,即把这个本地的EXCEL文件上传至服务端.
希望各位大侠帮忙啊.
1.在服务端有EXCEL模板,在JSP页面上点击"编辑"按钮,即把模板下载至客户端本地并打开(过程中不要出现下载提示),完成编辑保存后,再点击JSP页面上的"保存"按钮,即把这个本地的EXCEL文件上传至服务端.
希望各位大侠帮忙啊.
解决方案 »
- james怎样向外部服务器发送邮件(163,sina等发邮件呀)????
- Spring 事务配置 问题(BeanNameAutoProxyCreator)
- musql用中文查询不出来记录
- 边框怎么没有了?
- 如何获取客户端是通过哪个端口访问的?
- 关于jsp图像处理
- 插入mysql数据库出现乱码!!!!!急!!!!
- int powers=(int)rs.getString("power");这样强制转换可否?
- servlet问题紧急求助!!!!!!
- 解压rar5.0版本得压缩包失败,谁有最新得junrar.jar
- 请各位高手帮帮忙!!!!请解释一下下面的代码!!!非常非常感谢!!!!这是我所有的分数了!!!
- 急啊!jsp+Tomcat5.0+mysql4.122配置的服务器怎么总是报错?
<%@ page contentType="text/html;charset=gb2312" <%@import="com.jspsmart.upload.*" %> // 新建一个SmartUpload对象 SmartUpload su = new SmartUpload(); // 初始化 su.initialize(pageContext); // 设定contentDisposition为null以禁止浏览器自动打开文件, //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为 //doc时,浏览器将自动用word打开它。扩展名为pdf时, //浏览器将用acrobat打开。 su.setContentDisposition(null); // 下载文件 su.downloadFile("/upload/如何赚取我的第一桶金.doc");%>
注意,执行下载的页面,在Java脚本范围外(即<% ... %>之外),不要包含HTML代码、空格、回车或换行等字符,有的话将不能正确下载。不信的话,可以在上述源码中%><%之间加入一个换行符,再下载一下,保证出错。因为它影响了返回给浏览器的数据流,导致解析出错。
%@ page contentType="text/html; charset=gb2312" language="java"
import="java.util.*,com.jspsmart.upload.*" errorPage="" %>
<html>
<head>
<title>文件上传处理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
// 1.限制每个上传文件的最大长度。
// su.setMaxFileSize(10000);
// 2.限制总上传数据的长度。
// su.setTotalMaxFileSize(20000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
// su.setAllowedFilesList("doc,txt");
// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,
jsp,htm,html扩展名的文件和没有扩展名的文件。
// su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
int count = su.save("/upload");
out.println(count+"个文件上传成功!<br/>");// 利用Request对象获取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");// 逐一提取上传文件信息,同时可保存文件。
for (int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);// 若文件不存在则继续
if (file.isMissing()) continue;// 显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"
+ file.getFieldName() + "</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>" +
file.getSize() + "</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"
+ file.getFileName() + "</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"
+ file.getFileExt() + "</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"
+ file.getFilePathName() + "</TD></TR>");
out.println("</TABLE><BR>");
su.SAVE_PHYSICAL);}
%>
</body>
</html>
我以前看到某高人写的 转载
<%@ page contentType="text/html;charset=gb2312" import="com.jspsmart.upload.*" %>
<% SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.setContentDisposition(null);
su.downloadFile("/report/Model/BudGetMode.xls");
%>
问题:
1.这是我下载页面的代码,还是会出现下载提示的,是要打开,还是保存的提示框;
2.su.downloadFile("/report/Model/BudGetMode.xls")这一句只是指出了源文件的位置,怎么样指定下载的目标路径啊?
人家到你的网站上浏览了一下,就给人家放一个文件,太不安全了阿,要是你给个木马呢。
上传嘛,你是希望修改完了,自动上传对吧,也不可能。你不能让excel往你的网站发送一个上传得请求吧 。总的来说你需要考虑别的解决方案。
您的说话我现在想想也确实是这样了,您见我的另一个贴子,看看这个需求有希望解决吗?
http://community.csdn.net/Expert/topic/5608/5608977.xml?temp=.1963922
请部有详细一点的代码或是解决方案吗?
1,证书,作信任,继承微软office(很贵,专有技术)
2。作ocx,安装,直接在IE页面上编辑保存即可
3。ftp上传编辑,需要c++技术作组件,和第二种类似
4。用js模仿exl,可以参考weboffice组件。
有具体的代码可供参考吗?
最简单有效的就可以.安全性之类的要求不是很高.只要功能可以实现就OK了.
要是用户需要保存到本地、或者打印,在用js或者别的方法实现如果你的EXCEL是直接以文件的形式,保存在服务器的话,那直接
file://server/d$/ftp2/file/eee.xls,就OK了
只要在服务器上,给这个文件夹、文件授权就行了。如果文件是保存在数据库里面的,真的实现,下载、编辑、上传,那困难就多了
就要考虑 shan__le 的问题
其实我最终要做的,就是编辑服务器上的EXCEL文件,因为不能直接在服务器上编辑保存,所以才想到先下载到本地再编辑,然后再上传回去的.
如果可以直接在页面上编辑保存的话,一切就OK了.有什么好的办法吗?
问题到现在还没搞定呢啊.结贴了谁还来帮忙呀?
您昨天跟我说了两句就没影了,找你也找不到哦.看到我前面给您留的话了没?
下载的时候还是弹出对话框哈.
用excel里的交互页面功能,做一个摸板
点击下载链接,打开一个摸板,从数据库里读取文件,填充到摸板
之后就可以随便编辑
上传:
可以在页面上加一个保存按钮,单击上传
请教一下,有详细的代码么?我有点没头绪哈
你打开一个excel文件(new一个也行),"文件"菜单===>"保存到网页"
记住选定"交互页面"
你自己看看里面有些什么东西(一些代码可以自己看看),不难的
然后就是按照固定的格式,拼一个页面出来(类似Table格式)
如果不用这种方法的话,你要请教shan__le了
做一个仿EXCEL风格的页面,用户保存之后,重写服务器上的excel,哈哈
读写excel的方法,可以用jxl或者poi(我没用过这个),网上资料很多难度不高、时间不长、又不废脑我估计excel模版的话有点缺点,但是不知道lihui_shine()是甚么思路,我觉得要是你的系统里面的excel样式很多,那就要做很多模版,而且到时候点哪个excel调用哪个模版,还需要配置
对的,还要考虑版本问题,各种OFFICE版本有不同的classid
高手,呵呵
(想到一个简单的方法,技术含量可以忽略不计
做一个仿EXCEL风格的页面,用户保存之后,重写服务器上的excel,哈哈
读写excel的方法,可以用jxl或者poi(我没用过这个),网上资料很多......)如此看来的话,这是最好的方法了,也实用
我刚才试了一下您说的方法,觉得有一定的可行性,其实就是另存为一个HTM文件了.以这个HTM文件做为模板.我也可以在我的页面里打开这个模板了,只是现在不知道编辑后如何来保存这个页面呢?
哈哈
因为我比较懒,技术也很烂,所以都是选择比较简单的方法
classid是甚么意思我还是刚刚看了你的回复,查了一下才知道。这个问题我也想不出甚么好方法了,shan__le也提到用js做一个仿excel
但不知道weboffice组件是甚么样子,是不是类似很多论坛里面,可以在恢复里面设置表格、字体的那种?这样的话,FCKeditor很有名,但读写EXCEL还是一定的。
楼主这个问题,我觉得可以不用这个东西
去网上看看它的具体用法,它的功能蛮强大的,应该可以满足你的要求
不过真的不错,效果蛮好的
去下载个iWebOffice2006.ocx就行了
现在使用lihui_shine()前面说的方法,已经可以实现一些功能了,现在就差在交互的HTM页面上编辑之后,如何保存这个HTM页面了啊.
文档也很全至于key的话,试试里面的classid吧
我开始就是这么考虑的,但是这个方法终究无法避免弹出文件保存对话框这样的过程...
这个应该能帮你解决,我没有用过,听说过,呵呵~`