http://hi.baidu.com/fableking/blog/item/d93e99224c09cdf3d7cae210.html
================================================================================
一、首先我们需要实现上传文件的功能,这个我以前做过,所以比较得心应手
1.到下面的地址去下载UploadBean组件
http://www.javazoom.net/jzservlets/uploadbean/uploadbean.html
2.到下面的地址去下UploadBean的插件——FileMover
http://www.javazoom.net/jzservlets/uploadbean/uploadbeantools.html
3.把其中的三个包cos.jar,uploadbean.jar,filemover.jar放到web程序的目录WEB-INF\lib下
4.上传配置完毕
二、客户选择文件上传的表单代码
<form name=go action=readtxt.jsp method=post CTYPE="multipart/form-data">
<input type=file name=url><br>
<input type=submit value="提交并读取>>">
</form>
三、实现上传>>读取>>存入数据库>>删除的主要代码readtxt.jsp[注:我用的是UTF-8编码,具体要根据实际情况调节]
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ page import="java.io.*,
connect.Conn,
javazoom.upload.*,
uploadutilities.FileMover,
java.util.*"
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>读取文件中</title>
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");//设置编码格式,就不用一个个转码了
FileMover fileMover = new FileMover();//创建一个FileMover对象,并实例化fileMover
UploadBean upBean = new UploadBean();//创建一个UploadBean对象,并实例化upBean
MultipartFormDataRequest mrequest = null;
Hashtable files = null;//创建一个容器,其空间在后面将用来存放上传文件
if (MultipartFormDataRequest.isMultipartFormData(request))
{
mrequest = new MultipartFormDataRequest(request,null,100*1024*1024,MultipartFormDataRequest.COSPARSER,"UTF-8");//注意这里也要设置编码参数,实现上面表单中的multipart/form-data
files = mrequest.getFiles();//得到表单提交的文件
}
String sWebRootPath = getServletContext().getRealPath("/");//得到web应用的根。
String sPath=sWebRootPath+"temp";//声明上传路径为根目录中的temp目录下
String sServerFileName="";
String sLocalFileName = "";
//文件获取
if ( (files != null) || (!files.isEmpty()))
{
UploadFile file = (UploadFile) files.get("url");
sLocalFileName=file.getFileName();
int ii= sLocalFileName.indexOf(".");
String sExt = sLocalFileName.substring(ii,sLocalFileName.length());//取文件名的后缀
//得到不重复的文件名,这一步是为了防止同时上传两个同文件名的txt而做的,避免文件名重复
java.util.Date dt = new java.util.Date(System.currentTimeMillis());
SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMddHHmmssSSS");
sServerFileName= fmt.format(dt);
sServerFileName =sServerFileName + sExt;
//如果不存在该目录,则新建一个
File dir =new File(sPath);
if (!dir.exists())
{
dir.mkdirs();
}
upBean.setFolderstore(sPath);//创建要上传的目录
upBean.addUploadListener(fileMover);//增加filMover监听
fileMover.setNewfilename(sServerFileName);//设置服务器上的文件名
upBean.store(mrequest, "url");//上传
}
Conn db=new Conn();//连接数据库,这是我自己写的javabean,实际运用中请使用其他连接数据库的代码替换
String sql="";
FileReader fr=new FileReader(sPath+"/"+sServerFileName);//建立FileReader对象,并实例化为fr
BufferedReader br=new BufferedReader(fr);//建立BufferedReader对象,并实例化为br
String Line=br.readLine();//从文件读取一行字符串
while(reader.ready())
{
Line=br.readLine();
}
out.print(Line);//输出从文件中读取到的内容
//这里可以插入对读取到的内容筛选,然后用下面的sql语句插入数据
sql="";//这里写sql语句
db.Update(sql);//执行sql语句
fr.close();//关闭文件输出流,不关闭的话,将无法执行最后一步的删除
File txtfile=new File(sPath+"/"+sServerFileName);//创建File对象,并获得要操作的文件路径
txtfile.delete();//删除文件
out.print("文件读取完毕...");
%>
</body>
</html>
分享到:
相关推荐
使用JSP读取客户端信息 请阅读以下代码。如果你的使用要求不同,可对这些代码加以很方便的修改。这些代码可以使你获得: 公司company, 用户name,版本version,main version,minor version 操作系统(未完成!),语言...
在客户端繁体系统中如果被打包文件包含中文会有乱码现象(如有解决办法请告诉我,现在做的只能判断繁简客户端决定输出文件名); import 中的 ni.* 主要是用到数据库连接函数,可以根据需要修改。
jsp和宏之间的争议 jsp的5个不足之处 JSP不能代替Servlet Resin中的JSP范例 JSP发送邮件 jsp如何与ejb通信 Servlet和JSP的通信 jsp与applet通信 在JSP中写text文件 使用JSP读取客户端...
32、jsp文件中定义类 3 3、取得 JSP Container 版本 34、javax.servlet.jsp.JspWriter - out 对象 35、page 隐含对象 36、application 对象 37、PageContext 对象 38、Page范围 - pageContext 39、测试要显示的中文...
"目录直读程序"可能是指一个能够读取并显示服务器上特定目录结构的JSP应用程序。这样的程序可能允许用户浏览文件和文件夹,查看文件列表,甚至可能包括下载、上传或管理这些文件的功能。这个资料包可能包含了实现这...
服务端 的war内我已经对WEB-INF文件夹中的web.xml文件、deployerConfigContext.xml文件、view目录内的jsp文件以及classes的services下的json配置文件做过修改。除了cas默认支持的功能外,该war包还实现了:登录页面...
(4)读取保存到客户端的Cookie 使用Request对象的getCookie()方法,执行时将所有客户端传来的Cookie对象以数组的形式排列,如果要取出符合需要的Cookie对象,就需要循环比较数组内每个对象的关键字。 例如...
数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写...
数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写...
这是本人在开发和学习中长期整理出来的,个人认为比较实用,一共11份word文档,含目录方便查看。...19. 读取配置文件(1) 25 20. 根据libName动态加载jar类库 33 =================================== ....
客户端使用了jquery的uploadify插件,显示多文件的一步上传. 实时显示上传比例. 有着漂亮的界面. 演示效果:http://www.uploadify.com/demo/ 后台使用了Apache的Commons fileUpload 来完成对上传文件的读取与保存 ...
实例37 读取随机文件 实例38 操作EXECL文件 实例39 生成PDF文件 实例4 矢量对象操作 实例40 压缩和解压文件 实例41 执行系统命令 实例42 获取计算机名称和IP地址 实例43 一对简单的服务器和客户端 实例44 多线程...
图片上传是指客户端通过Web应用程序将本地图片资源传输到服务器上。在客户端需要显示图片时,服务器端将图片通过网络以流的形式发送给...掌握图片上传和读取的原理,可以帮助大家了解更多关于文件在网络中传输的知识。
2) MyUpdate为客户端所用文件源程序. 此软件自动更新程序为外部升级程序,使用时主程序须调用此程序. 升级原理为读取网站服务器上事先提供的版本号及升级地址进行升级.本程序提供了三种不同服务器上的页面...
在Tomcat中的JSP编译过程中,Tomcat先将整个JSP页面的代码读取出来,写到一个新的Java文件中,然后编译成class文件。 6. Servlet的执行性能 JSP和Servlet的执行性能只在第一次有差别,因为JSP在执行一次后,会被...
3.在JSP中如何读取客户端的请求,如何访问CGI变量,如何确定某个Jsp文件的真实路径。 4.描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理。 5.列出Jsp中包含外部文件的方式,两者有何区别。 6....
Javaweb 小练习代码绝对有你想要的,pageEncoding是JSP文件本身的编码;contentType的charset是指服务器发送给客户端时的内容编码。 JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用UTF-8至UTF...