JSP单页面网站文件管理器

这个文件的开发的设计思想是这样的。有的web 网站,或者B/S 软件的客户,在软件的安装调试阶段,往往对某些细节有特殊要求,也许,是字体的调整,也许是界面方面的小改动意见。面对这样的情况,如果用户没有开放FTP 功能,则开发和维护人员往往就必须亲临现场做一些很小的调试工作。

即浪费了时间,也浪费了人力物力。

在这样的情况下,我开发了这个具有文件管理功能的 JSP 单页面文件。它提供了文件夹的新增,更名,删除;文件的修改,更名,删除和上传的功能。基本能满足在软件的安装调试阶段,小的修改工作。

为了安全原因,该JSP 页面提供了简单的用户登陆功能。

使用前,把该文件置于网站文件,或者B/S 产品的任意目录下。开放文件安装目录的 读写 操作权限。用户远程登陆该JSP 页面,就可以行使管理功能。当安装维护阶段结束以后,请修改文件安装目录的 读写 权限,并删除该文件,以免留下安全隐患。

缺省,登陆用户名为:admin 密码为:oddworld

开发环境 jakarta-tomcat-4.0.3.exe

注意:因为本软件的上传文件功能必须有 smartupload 组件支持。请把smartupload 置于tomcat 对应文件夹web-inf 下。如果你支持上传的组件有所不同,请自行调整。

简要开发说明:因为本文件并不复杂,加上本人自我感觉,文档说明虽然不规范,却也详细,所以只打算简要的关于一些小细节上做说明。

1. 本文件进行文件目录操作的时候,直接把目录当参数来传递,没有进行相应的转换。这是因为在 java 中, “\英文字符”有可能会被认为是转意字符,而引起在字符处理过程中出现无法预期的问题,所以我认为直接把目录来作为参数,在操作上比较合理。

2. 本文件在一些表单的提交方面,使用连接,而不是按钮,是因为 javascript 处理带 “\”的字符串时,也会有处理转意字符的可能,所以,为了防止这样的情况,所以传递目录参数的提交,都使用连接形式。

3. strStat,strErr 两个字符串,贯穿文件始终,前者为页面进行何种操作的判断命令,后者为在所有操作中出错的信息提示。

4. 本文件有可能引起的安全或者其它方面的纠纷,本人不做任何解释。我只是把该文件作为一个免费的工具提供给大家参考,使用。

----------------------------------------------------------------

文件内容 admin.jsp

1-- oddWorld 网站文件管理系统(简体中文版) 2003年10月10日   
2copy right by joard Ast   
3  
4admin.jsp 功能:网站文件后台管理页面。   
5\--
1@ page contentType="text/html;charset=gb2312" 
1@ page import="java.io.*" 
1@ page import="java.util.Date" 
1@ page import="com.jspsmart.upload.SmartUpload" 
1@ page import="javax.servlet.http.HttpSession" 
1@ page import="javax.servlet.http.HttpServletRequest" 
1@ page import="java.lang.reflect.*" 
1 //中文字符转换
 1! 
 2
 3public static String UnicodeToChinese(String s){   
 4try{   
 5if(s==null||s.equals("")) return "";   
 6String newstring=null;   
 7newstring=new String(s.getBytes("ISO8859_1"),"gb2312");   
 8return newstring;   
 9}   
10catch(UnsupportedEncodingException e)   
11{   
12return s;   
13}   
14} 
15
16public static String ChineseToUnicode(String s){   
17try{   
18if(s==null||s.equals("")) return "";   
19String newstring=null;   
20newstring=new String(s.getBytes("gb2312"),"ISO8859_1");   
21return newstring;   
22}   
23catch(UnsupportedEncodingException e)   
24{   
25return s;   
26}   
27}   
  1   
  2//刷新问题   
  3response.setHeader("Pragma","No-cache");   
  4response.setHeader("Cache-Control","no-cache");   
  5response.setDateHeader("Expires", 0); 
  6
  7  
  8//自定义登陆用密码和用户名   
  9//正确的用户名   
 10String username="admin"   
 11//正确的密码   
 12String userpass="oddworld"; 
 13
 14//得到系统路径   
 15ServletContext app=(ServletContext)pageContext.getServletContext();   
 16String strSysPath = app.getRealPath("/"); 
 17
 18//处理对象物理路径   
 19String strDealPath=""; 
 20
 21//显示错误信息   
 22String strErr="";   
 23//代表页面的显示状态,login 是显示登陆页面;show 是正常的显示文件信息;edit 是显示编辑文件的页面;editDo 是编辑文件的写入操作 
 24
 25;createF 是显示创建文件夹的页面;createFDo 是创建文件夹的操作;renameFold 是显示更改文件夹名称的页面;renameFoldDo 是更改文 
 26
 27件夹名称的操作;delFoldDo 是删除文件夹的操作;renameFile 是显示更改文件名称的页面;renameFileDo 是更改文件名称的操作; 
 28
 29delFileDo 是删除文件的操作;uploadFile 是显示上传文件的页面;uploadFileDo 是上传文件的操作;   
 30String strStat="login"; 
 31
 32//用于show 状态下显示文件的数组   
 33File[] fileArr=null; 
 34
 35//根据传递的路径参数得到要处理对象的物理路径   
 36if (request.getParameter("path")==null || request.getParameter("path").equals("")){   
 37strDealPath=strSysPath;   
 38}else{   
 39//得到路径参数   
 40strDealPath=UnicodeToChinese(request.getParameter("path"));   
 41} 
 42
 43//检查session 的值是否存在,如果不存在着显示错误信息   
 44//HttpSession session = request.getSession(false);   
 45if (session.getValue("loginIn")==null || !session.getValue("loginIn").equals("pass"))   
 46{   
 47strStat="login";   
 48strErr="你还没有登陆或者登陆超时,请重新登陆!";   
 49} 
 50
 51//创建file 对象,检查目录是否存在   
 52File myFile=new File(strDealPath); 
 53
 54//检验文件夹是否存在   
 55if(!myFile.exists()){   
 56strErr="你选择的文件夹不存在,请重新选择!";   
 57} 
 58
 59//根据参数的不同,进行对应的操作   
 60if(request.getParameter("act")==null || request.getParameter("act").equals("") || 
 61
 62request.getParameter("act").equals("login"))   
 63{   
 64if(request.getParameter("username")!=null && request.getParameter("userpass")!=null)   
 65{   
 66  
 67//正确的经过MD5 加密的密码   
 68//String userpass="OEEO99107DC8C1EE2E06666B965601EF";   
 69  
 70if(request.getParameter("username").equals(username) && (request.getParameter("userpass")).equals(userpass))   
 71{   
 72session.putValue("loginIn","pass");   
 73response.sendRedirect(request.getRequestURI()+"?act=show");   
 74}   
 75}   
 76else {   
 77strStat="login";   
 78strErr="你还没有登陆或者登陆超时,请重新登陆!";   
 79}   
 80}else if(request.getParameter("act").equals("show")){   
 81//缺省,页面正常显示文件的信息 statStat="show"   
 82strStat="show";   
 83  
 84//创建文件列表数组   
 85fileArr=myFile.listFiles();   
 86  
 87}else if(request.getParameter("act").equals("edit"))   
 88{   
 89//编辑文件内容的页面   
 90//根据是否有request.getParameter("file"),以及相应文件是否存在,如果有,则进行编辑操作,如果没有,则显示错误提示信息   
 91if (!(request.getParameter("file")==null || request.getParameter("file").equals(""))){   
 92  
 93File fileEdit=new 
 94
 95File(UnicodeToChinese(request.getParameter("path"))+UnicodeToChinese(request.getParameter("file")));   
 96  
 97if(fileEdit.exists())   
 98//文件编辑操作,实际就是更改页面的显示,用一个textarea 显示文件的信息,来做编辑   
 99strStat="edit";   
100else   
101//显示错误信息   
102strErr="你选择的文件不存在,请重新选择!";   
103  
104}else{   
105strErr="你没有选择要编辑的文件,请重新选择!";   
106}   
107}else if(request.getParameter("act").equals("editDo"))   
108{   
109//把修改的内容写入文件,并且返回修改页面   
110if (!(request.getParameter("file")==null || request.getParameter("file").equals("")))   
111{   
112File fileEdit=new 
113
114File(UnicodeToChinese(request.getParameter("path"))+UnicodeToChinese(request.getParameter("file")));   
115  
116if(fileEdit.exists())   
117{   
118//文件编辑操作,实际就是在修改文件内容以后,再于页面上用一个textarea 显示文件的内容,继续来做编辑或者 
119
120查看修改的效果   
121if(!(request.getParameter("fileData")==null))   
122{   
123  
124try{   
125PrintWriter pwEdit =null;   
126pwEdit=new PrintWriter(new 
127
128FileOutputStream(UnicodeToChinese(request.getParameter("path"))+UnicodeToChinese(request.getParameter("file"))));   
129pwEdit.println(UnicodeToChinese(request.getParameter("fileData")));   
130pwEdit.close();   
131  
132response.sendRedirect(request.getRequestURI()+"?path="+ 
133
134UnicodeToChinese(request.getParameter("path")) +"&file="+ UnicodeToChinese(request.getParameter("file")) +"&act=edit");   
135return;   
136}catch(Exception e){   
137strErr="文件写入错误,请重新选择!";   
138}   
139}else{   
140strErr="缺少修改文件内容的参数,请重新选择!";   
141}   
142}else   
143//显示错误信息   
144strErr="你选择的文件不存在,请重新选择!";   
145}else{   
146strErr="你没有选择要编辑的文件,请重新选择!";   
147}   
148}else if(request.getParameter("act").equals("createF"))   
149{   
150//创建新的文件夹的页面显示   
151strStat="createF";   
152}else if(request.getParameter("act").equals("createFDo"))   
153{   
154//创建新的文件夹   
155String strFoldName=strDealPath+UnicodeToChinese(request.getParameter("foldName")).trim()+"\\\"; 
156
157//out.println(strFoldName);   
158//out.close(); 
159
160File fileCreateF=new File(strFoldName);   
161  
162if(!fileCreateF.exists())   
163{   
164try{   
165fileCreateF.mkdir();   
166response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");   
167return;   
168}catch(Exception e){   
169strErr="创建新文件夹失败!";   
170}   
171}   
172else   
173  
174{   
175strErr="指定的文件夹名称和现有的文件夹名称重复,请重新指定一个新的文件夹名称!";   
176}   
177}else if(request.getParameter("act").equals("delFoldDo"))   
178{   
179//删除操作   
180try{   
181String strFileDelF=strDealPath+UnicodeToChinese(request.getParameter("fold"))+"\\\";   
182File fileDelF=new File(strFileDelF);   
183  
184if(fileDelF.exists()){   
185File[] fileArrCheck=fileDelF.listFiles();   
186if(!(fileArrCheck.length>0))   
187{   
188fileDelF.delete();   
189response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");   
190return;   
191}else   
192{   
193strErr="文件夹下面还包含着文件,请把文件都删除,再删除文件夹";   
194}   
195}else{   
196strErr="要删除的文件夹不存在,请重新选择";   
197}   
198  
199}catch(Exception e)   
200{   
201strErr="文件夹删除操作错误!";   
202}   
203}else if(request.getParameter("act").equals("renameFold"))   
204{   
205strStat="renameFold";   
206}else if(request.getParameter("act").equals("renameFoldDo"))   
207{   
208//文件夹更名操作   
209//根据参数判断是否对于文件夹名称有更改动作发生   
210if(request.getParameter("changeDo").equals("true"))   
211{   
212//有文件名,更名发生   
213try{   
214String strFileRenameF=strDealPath+UnicodeToChinese(request.getParameter("fold"))+"\\\";   
215File fileRenameF=new File(strFileRenameF);   
216  
217String strFileRenameToF=strDealPath+UnicodeToChinese(request.getParameter("newFoldName"))+"\\\";   
218File fileRenameToF=new File(strFileRenameToF);   
219  
220//判断更名的文件夹是否存在   
221if(fileRenameF.exists()){   
222//判断新的文件夹名称是否与现存的文件夹重名   
223if(!fileRenameToF.exists())   
224{   
225fileRenameF.renameTo(fileRenameToF);   
226response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");   
227return;   
228}else   
229{   
230strErr="指定的文件夹名称和现有的文件夹名称重复,请重新指定一个文件夹名称!";   
231}   
232}else{   
233strErr="要更名的文件夹不存在,请重新选择";   
234}   
235  
236}catch(Exception e)   
237{   
238strErr="文件夹更名操作错误!";   
239}   
240}   
241}else if(request.getParameter("act").equals("renameFile"))   
242{   
243strStat="renameFile";   
244}else if(request.getParameter("act").equals("renameFileDo"))   
245{   
246//文件更名操作   
247//根据参数判断是否对于文件名称有更改动作发生   
248if(request.getParameter("changeDo").equals("true"))   
249{   
250//有文件名,更名发生   
251try{   
252String strFileRenameFi=strDealPath+UnicodeToChinese(request.getParameter("file"));   
253File fileRenameFi=new File(strFileRenameFi);   
254  
255String strFileRenameToFi=strDealPath+UnicodeToChinese(request.getParameter("newFileName"));   
256File fileRenameToFi=new File(strFileRenameToFi);   
257  
258//判断更名的文件是否存在   
259if(fileRenameFi.exists()){   
260//判断新的文件名称是否与现存的文件重名   
261if(!fileRenameToFi.exists())   
262{   
263fileRenameFi.renameTo(fileRenameToFi);   
264response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");   
265return;   
266}else   
267{   
268strErr="指定的文件名称和现有的文件名称重复,请重新指定一个文件名称!";   
269}   
270}else{   
271strErr="要更名的文件不存在,请重新选择";   
272}   
273  
274}catch(Exception e)   
275{   
276strErr="文件更名操作错误!";   
277}   
278}   
279}else if(request.getParameter("act").equals("delFileDo"))   
280{   
281//删除操作   
282try{   
283String strFileDelFi=strDealPath+UnicodeToChinese(request.getParameter("file"));   
284File fileDelFi=new File(strFileDelFi);   
285  
286if(fileDelFi.exists())   
287{   
288fileDelFi.delete();   
289response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");   
290return;   
291}else{   
292strErr="要删除的文件不存在,请重新选择";   
293}   
294  
295}catch(Exception e)   
296{   
297strErr="文件删除操作错误!";   
298}   
299}else if(request.getParameter("act").equals("uploadFile"))   
300{   
301strStat="uploadFile";   
302}else if(request.getParameter("act").equals("uploadFileDo"))   
303{   
1<jsp:usebean class="com.jspsmart.upload.SmartUpload" id="mySmartUpload" scope="page"></jsp:usebean>
 1   
 2//上传文件操作   
 3mySmartUpload.initialize(pageContext);   
 4mySmartUpload.setTotalMaxFileSize(1000000); 
 5
 6try {   
 7mySmartUpload.upload();   
 8mySmartUpload.save(strDealPath);   
 9  
10response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");   
11return;   
12} catch (Exception e) {   
13strErr="文件上传出错,请检查是否超过1M 的文件大小限制!";   
14} 
15
16} 
1   
2out.println(strStat);   
 1<html><head><title>Directory Listing For /</title>
 2<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
 3<meta content="MSHTML 5.00.2920.0" name="GENERATOR"/></head>
 4<body bgcolor="white">
 5<div align="center">
 6<table border="0" cellpadding="5" cellspacing="0" width="90%">
 7<tbody>
 8<tr>
 9<td align="left" bgcolor="#000066" valign="bottom"><font ,?times="" color="#ffffff" face="宋体" new="" roman?="" size="4"><b> 网站文件管理器</b></font></td>
10<td align="right" bgcolor="#000066" valign="bottom"><font ,?times="" color="#ffffff" face="宋体" new="" roman?="" size="4"><b> <strong>```
11=request.getContextPath()
12```</strong></b></font></td>
13</tr>
14</tbody>
15</table>
16<table border="0" cellpadding="5" cellspacing="0" width="90%">
17<tr>
18<td><font size="2"><b>物理路径:</b>```
19=strDealPath
20```</font></td>
21</tr>
22</table>
23<br/>   

if (strStat.equals("login")){

 1<table border="0" cellpadding="0" cellspacing="1" width="300">
 2<tr>
 3<td align="center" height="200" valign="top">
 4<p align="center">
 5<table bgcolor="#999999" border="0" cellpadding="5" cellspacing="1" class="a9px" width="100%">
 6<tr>
 7<td bgcolor="#cccccc"><font size="+2">登录</font></td>
 8</tr>
 9<tr>
10<td align="center" bgcolor="#FFFFFF" valign="top">
11<table border="0" cellpadding="0" cellspacing="0" width="100%">
12<form action="```
13=request.getRequestURI()
14```?act=login" method="post" name="dataform">
15<tr>
16<td width="100"><b><font size="-1">登录名:</font></b></td>
17<td>
18<input maxlength="16" name="username" value=""/>
19</td>
20</tr>
21<tr>
22<td width="100"><b><font size="-1">密码:</font></b></td>
23<td>
24<input class="stedit" maxlength="16" name="userpass" value=""/>
25</td>
26</tr>
27</form>
28</table>
29<br/>
30<table border="0" cellpadding="0" cellspacing="0">
31<tbody>
32<tr>
33<td>
34<input name="update" onclick="javascript:if (checkform()==false);" type="button" value="登 录"/>
35</td>
36<td> </td>
37<td> </td>
38</tr>
39</tbody>
40</table>
41<br/>
42</td>
43</tr>
44</table>
45</p></td>
46</tr>
47</table>   

//错误信息显示
}else if(strErr!=""){

 1<table border="0" cellpadding="5" cellspacing="0" width="90%">
 2<tr>
 3<td><font size="+2"><strong>操作错误</strong></font></td>
 4</tr>
 5</table>
 6<table align="center" cellpadding="5" cellspacing="0" width="90%">
 7<form =unicodetochinese(reques="" ```&amp;act='renameFoldDo"' ```&fold="```" action="```
 8=request.getRequestURI()
 9```?path=```
10=UnicodeToChinese(request.getParameter(" method="post" name="dataForm2" path"))="" t.getparameter("fold"))="">
11<tbody>
12<tr bgcolor="#cccccc">
13<td align="left" bgcolor="#cccccc"><strong><font size="-1">错误原因:</font></strong></td>
14</tr>
15<tr>
16<td align="left"><tt><font color="red">```
17=strErr
18```</font></tt>
19</td>
20</tr>
21<tr>
22<td align="center" bgcolor="#cccccc"><tt>[ <a href="javascript:history.go(-1);">返回操作</a> ]</tt>  <tt>[ <a ```&act='show"' href="```
23=request.getRequestURI()
24```?path=```
25=UnicodeToChinese(request.getParameter(" path"))="">返回目录</a>   
26]<input name="changeDo" type="hidden" value="false"/></tt> </td>
27</tr>
28</tbody>
29</form>
30</table>   
31  

}else if(strStat.equals("show")){
//正常显示页面

 1<table border="0" cellpadding="5" cellspacing="0" width="90%">
 2<tr>
 3<td><font size="+2"><strong>目录列表:</strong></font></td>
 4</tr>
 5</table>
 6<table align="center" cellpadding="5" cellspacing="0" width="90%">
 7<tbody>
 8<tr bgcolor="#cccccc">
 9<td align="left"><font size="+1"><strong><font size="-1">名称</font></strong></font><tt>(单击进入相应目录)</tt></td>
10<td align="center"><font size="+1"><strong><font size="-1">修改时间</font></strong></font></td>
11<td align="center"><b><font size="-1">重命名</font></b></td>
12<td align="center"><b><font size="-1">删除</font></b></td>
13</tr>   

//显示表格行的初始颜色
String bgColor="";
//如果不是根目录,则显示一个回到上层目录的连接
if(!(strDealPath.equals(strSysPath))){

1<tr =bgcolor="" ```="" bgcolor="```">
2<td align="left">  <tt><font color="#000066" face="WingDings" size="4">0</font><a "="" \\\"="" ```&amp;act="show" href="```
3=request.getRequestURI()
4```?path=```
5=(myFile.getParent())+" title="单击进入上层目录">上层目录</a></tt></td>
6<td align="right"> </td>
7<td align="center"> </td>
8<td align="center"> </td>
9</tr>   

}
for(int i=0 ; i<filearr.length ""="" "#eeeeee";="" :="" ;="" <tr="" =bgcolor="" ?="" ="" bgcolor="" i++){="" if(filearr[i].isdirectory()){="" 如果是文件夹则显示="" 颜色隔行变换=""> <td align="left">  <tt><font color="#000066" face="WingDings" size="4">0</font><a \"="" &act='show"' href=" =request.getRequestURI() ?path= =strDealPath+fileArr[i].getName()+" title="单击进入相应目录">``` =fileArr[i].getName()

 1<td align="center"><tt>```
 2=(new Date(fileArr[i].lastModified()))
 3```</tt></td>
 4<td align="center"><tt><a href="```
 5=request.getRequestURI()
 6```?path=```
 7=strDealPath
 8```&amp;amp;fold=```
 9=fileArr[i].getName()
10```&amp;amp;act=renameFold"&gt;重命名&lt;/a&gt;&lt;/tt&gt;&lt;/td&gt;
11&lt;form action="```
12=request.getRequestURI()
13```?path=```
14=strDealPath
15```&amp;amp;fold=```
16=fileArr[i].getName()
17```&amp;amp;act=delFoldDo" method="post" name="dataFormFold```
18=i
19```"&gt;&lt;td align="center"&gt;&lt;tt&gt;&lt;a href="javascript:if(confirm('确实要删除该文件夹,所有的内容将不能继续使用? 
20
21')){window.dataFormFold```
22=i
23```.submit();}">删除</a></tt></td></form>
24   

}
}

 1&lt;tr align="center"&gt;
 2&lt;td bgcolor="#cccccc" colspan="4"&gt;&lt;tt&gt;[ &lt;a href="```
 3=request.getRequestURI()
 4```?path=```
 5=strDealPath
 6```&amp;amp;act=createF"&gt;新建文件夹 
 7
 8&lt;/a&gt;   
 9]&lt;/tt&gt;&lt;/td&gt;
10&lt;/tr&gt;
11&lt;/filearr.length&gt;&lt;/tbody&gt;
12&lt;/table&gt;
13&lt;table border="0" cellpadding="5" cellspacing="0" width="90%"&gt;
14&lt;tr&gt;
15&lt;td&gt;&lt;font size="+2"&gt;&lt;strong&gt;文件列表:&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;
16&lt;/tr&gt;
17&lt;/table&gt;
18&lt;table align="center" cellpadding="5" cellspacing="0" width="90%"&gt;
19&lt;tbody&gt;
20&lt;tr bgcolor="#cccccc"&gt;
21&lt;td align="left"&gt;&lt;font size="+1"&gt;&lt;strong&gt;&lt;font size="-1"&gt;名称&lt;/font&gt;&lt;/strong&gt;&lt;/font&gt;&lt;tt&gt;(单击编辑相应文件)&lt;/tt&gt;&lt;/td&gt;
22&lt;td align="center"&gt;&lt;font size="+1"&gt;&lt;strong&gt;&lt;font size="-1"&gt;大小&lt;/font&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;
23&lt;td align="center"&gt;&lt;font size="+1"&gt;&lt;strong&gt;&lt;font size="-1"&gt;修改时间&lt;/font&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;
24&lt;td align="center"&gt;&lt;b&gt;&lt;font size="-1"&gt;重命名&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;
25&lt;td align="center"&gt;&lt;b&gt;&lt;font size="-1"&gt;删除&lt;/font&gt;&lt;/b&gt;&lt;/td&gt;
26&lt;/tr&gt;   

bgColor="#eeeeee";
if(fileArr.length!=0){
for(int i=0 ; i<filearr.length ""="" "#eeeeee";="" :="" ;="" <tr="" =bgcolor="" ?="" ="" bgcolor="" i++){="" if(filearr[i].isfile()){="" 如果是文件则显示="">

   3``` =fileArr[i].getName() `````` =fileArr[i].length() `````` =(new Date(fileArr[i].lastModified())) ```重命名
1   

}
}
}else {

}

//正常显示状态结束
}else if(strStat.equals("edit")){
//文件编辑状态
BufferedReader bufReadIn=new BufferedReader(new

FileReader(UnicodeToChinese(request.getParameter("path"))+UnicodeToChinese(request.getParameter("file"))));
String strContext="";
String strReadLine="";

}else if(strStat.equals("createF")){

}else if(strStat.equals("renameFold"))
{

}else if(strStat.equals("renameFile"))
{

}else if(strStat.equals("uploadFile")){

}

1<script language="javascript">   
2<!-- 

//根据参数不同,显示不同的检测参数的函数
if(strStat.equals("login")) {

 1function checkform()   
 2{   
 3var Checkblank = /^(\s*|(\ )|(\\.))*$/; 
 4
 5if (Checkblank.test(dataform.username.value))   
 6{   
 7alert("登录名不能为空!");   
 8return false;   
 9}   
10  
11if (Checkblank.test(dataform.userpass.value))   
12{   
13alert("密码不能为空!");   
14return false;   
15} 
16
17  
18window.dataform.submit(); 
19
20}   

}else if(strStat.equals("createFold")) {

 1function checkForm()   
 2{   
 3var Checkblank = /^(\s*|(\ )|(\\.))*$/;   
 4if (Checkblank.test(dataForm.foldName.value))   
 5{   
 6alert("新建文件夹名称不能为空!");   
 7dataForm.foldName.focus();   
 8return false;   
 9}   
10  
11var SPECIAL_STR = " \\\/:*?\ "><|";   
12for(i=0;i<(dataForm.foldName.value).length;i++)   
13{   
14if (SPECIAL_STR.indexOf((dataForm.foldName.value).charAt(i)) !=-1)   
15{   
16alert("文件夹名称不能含有如下字符 \\\/:*?\ "><|");   
17dataForm.foldName.focus();   
18return false;   
19}   
20}   
21  
22window.dataForm.submit();   
23}   
24  

}else if(strStat.equals("renameFold")) {

 1function checkForm2()   
 2{   
 3var Checkblank = /^(\s*|(\ )|(\\.))*$/;   
 4if (Checkblank.test(dataForm2.newFoldName.value))   
 5{   
 6alert("重命名的文件夹名称不能为空!");   
 7dataForm2.newFoldName.focus();   
 8return false;   
 9}   
10  
11var SPECIAL_STR = " \\\/:*?\ "><|";   
12for(i=0;i<(dataForm2.newFoldName.value).length;i++)   
13{   
14if (SPECIAL_STR.indexOf((dataForm2.newFoldName.value).charAt(i)) !=-1)   
15{   
16alert("文件夹名称不能含有如下字符 \\\/:*?\ "><|");   
17dataForm2.newFoldName.focus();   
18return false;   
19}   
20}   
21//如果文件更名后和原文件名不同,则标示一个参数,表明确实有更名动作发生   
22if(dataForm2.newFoldName.value!="```
23=UnicodeToChinese(request.getParameter("fold"))
24```")   
25{   
26window.dataForm2.changeDo.value="true";   
27}   
28else   
29{   
30alert("请输入一个新的文件夹名称!");   
31dataForm2.newFoldName.focus();   
32return false;   
33}   
34  
35window.dataForm2.submit(); 
36
37}   

}else if(strStat.equals("renameFile"))
{

 1function checkForm3()   
 2{   
 3var Checkblank = /^(\s*|(\ )|(\\.))*$/;   
 4if (Checkblank.test(dataForm3.newFileName.value))   
 5{   
 6alert("重命名的文件夹名称不能为空!");   
 7dataForm3.newFileName.focus();   
 8return false;   
 9}   
10  
11var SPECIAL_STR = " \\\/:*?\ "><|";   
12for(i=0;i<(dataForm3.newFileName.value).length;i++)   
13{   
14if (SPECIAL_STR.indexOf((dataForm3.newFileName.value).charAt(i)) !=-1)   
15{   
16alert("文件名称不能含有如下字符 \\\/:*?\ "><|");   
17dataForm3.newFileName.focus();   
18return false;   
19}   
20}   
21//如果文件更名后和原文件名不同,则标示一个参数,表明确实有更名动作发生   
22if(dataForm3.newFileName.value!="```
23=UnicodeToChinese(request.getParameter("file"))
24```")   
25{   
26window.dataForm3.changeDo.value="true";   
27}   
28else   
29{   
30alert("请输入一个新的文件名称!");   
31dataForm3.newFileName.focus();   
32return false;   
33}   
34  
35window.dataForm3.submit(); 
36
37} 

}else if(strStat.equals("uploadFile")){

 1function checkForm4()   
 2{   
 3var Checkblank = /^(\s*|(\ )|(\\.))*$/;   
 4if (Checkblank.test(dataForm4.fileName.value))   
 5{   
 6alert("重命名的文件夹名称不能为空!");   
 7dataForm4.fileName.focus();   
 8return false;   
 9}   
10  
11window.dataForm4.submit(); 
12
13} 

}

1//-->   
2</script>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus