このファイルの開発の背後にある設計思想は次のとおりです。一部の Web サイトや B/S ソフトウェアの顧客は、ソフトウェアのインストールおよびデバッグ段階で特定の詳細 (おそらくフォントの調整やインターフェイスの小さな変更など) について特別な要件を持っていることがよくあります。このような状況に直面して、ユーザーが FTP 機能を開いていない場合、開発および保守担当者は、小規模なデバッグ作業を行うためにサイトに行かなければならないことがよくあります。
それは時間、人的資源、物的資源の無駄です。
このような状況で、ファイル管理機能を備えたこの JSP シングルページ ファイルを開発しました。フォルダーの追加、名前変更、削除、ファイルの変更、名前変更、削除、アップロードの機能を提供します。基本的には、ソフトウェアのインストールおよびデバッグ段階での小さな修正作業に対応できます。
セキュリティ上の理由から、この JSP ページには簡単なユーザー ログイン機能が提供されています。
使用する前に、このファイルを Web サイトのファイルまたは B/S 製品の任意のディレクトリに配置します。ファイルのインストール ディレクトリの読み取りおよび書き込み権限を開きます。ユーザーはリモートから JSP ページにログインして、管理機能を実行できます。インストールとメンテナンスのフェーズが完了したら、セキュリティ リスクを避けるために、ファイル インストール ディレクトリの読み取りおよび書き込み権限を変更し、ファイルを削除してください。
デフォルトでは、ログインユーザー名はadmin、パスワードはoddworld
開発環境jakarta-tomcat-4.0.3.exe
です。注: このソフトウェアのファイルアップロード機能はsmartuploadコンポーネントでサポートされている必要があるためです。 Smartupload は Tomcat の web-inf 相当フォルダ配下に配置してください。アップロードをサポートしているコンポーネントが異なる場合は、お客様自身で調整してください。
簡単な開発手順: このドキュメントは複雑ではなく、ドキュメントの説明も標準化されていないものの詳細であると思われるため、いくつかの細かい点について簡単に説明するつもりです。
1. このファイルがファイル ディレクトリ操作を実行する場合、ディレクトリは対応する変換なしでパラメータとして直接渡されます。これは、Java では「英語文字」がエスケープ文字として認識され、文字処理中に予期せぬ問題が発生する可能性があるため、ディレクトリを直接パラメータとして使用する方が合理的であると考えられます。
2. このドキュメントでは、一部のフォームを送信するときにボタンの代わりに接続を使用します。これは、JavaScript が「」を含む文字列を処理する場合に、エスケープ文字も処理する可能性があるためです。そのため、この状況を防ぐために、ディレクトリ パラメーターを渡す送信では、接続フォーム。
3. strStat と strErr はファイル全体で使用される 2 つの文字列で、前者はページが実行する操作を判断するコマンドであり、後者はすべての操作におけるエラーに関する情報プロンプトです。
4. この文書から生じる可能性のある安全性やその他の紛争については、いかなる説明も行いません。このファイルは、誰もが参照して使用できる無料のツールとして提供しているだけです。
-------------------------------------------------- ---------------
ファイル内容 admin.jsp
<%-- oddWorld Web サイト ファイル管理システム (簡体字中国語版) 2003 年 10 月 10 日
著作権はjoard Astによってコピーされます
admin.jsp 関数: Web サイト ファイルのバックグラウンド管理ページ。
--%>
<%@ ページ contentType="text/html;charset=gb2312" %>
<%@ ページインポート = "java.io.*" %>
<%@ page import="java.util.Date" %>
<%@ page import="com.jspsmart.upload.SmartUpload" %>
<%@ page import="javax.servlet.http.HttpSession" %>
<%@ page import="javax.servlet.http.HttpServletRequest" %>
<%@ page import="java.lang.reflect.*" %>
<% //漢字変換%>
<%!
public static String UnicodeTo Chinese(String s){
試す{
if(s==null||s.equals("")) は "" を返します。
文字列 newstring=null;
newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
新しい文字列を返します。
}
catch(UnsupportedEncodingException e)
{
を返します。
}
public static String ChineseToUnicode(String s)
{
試す{
if(s==null||s.equals("")) は "" を返します。
文字列 newstring=null;
newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
新しい文字列を返します。
}
catch(UnsupportedEncodingException e)
{
を返します。
}
}
%>
<%
//問題を更新する
response.setHeader("プラグマ","キャッシュなし");
response.setHeader("キャッシュ制御","キャッシュなし");
response.setDateHeader("有効期限", 0);
//ログイン用のパスワードとユーザー名をカスタマイズします
// ユーザー名を修正する
文字列ユーザー名 = "管理者"
//パスワードを修正してください
String userpass="oddworld"
// システム パスを取得します。
ServletContext app=(ServletContext)pageContext.getServletContext();
String strSysPath = app.getRealPath("/");
//オブジェクトの物理パスを処理します。
String strDealPath=""
// エラーメッセージを表示します
。
文字列 strErr="";
// ページの表示ステータスを表します。login はログイン ページを表示します。show はファイルの編集ページを表示します。editDo はファイルの編集操作を
表示します。 createFDo はフォルダーの作成操作、renameFoldDo は
フォルダー
の名前を変更する操作、delFoldDo はフォルダーの削除操作です。ファイルの名前を表示するページ。renameFileDo はファイルの名前を変更する操作です。uploadFile
はファイルをアップロードする操作です。
String strStat="login"
// ファイルを表示状態で表示するために使用される配列
File[] fileArr=null
//渡されたパスパラメータに基づいて処理されるオブジェクトの物理パスを取得します。
if (request.getParameter("path")==null || request.getParameter("path").equals("")){
strDealPath=strSysPath;
}それ以外{
//パスパラメータを取得する
strDealPath=UnicodeTo中国語(request.getParameter("パス"));
}
//セッション値が存在するかどうかを確認し、存在しない場合はエラー メッセージを表示します
//HttpSession セッション = request.getSession(false);
if (session.getValue("loginIn")==null || !session.getValue("loginIn").equals("pass"))
{
strStat="ログイン";
strErr="ログインしていないか、ログインがタイムアウトしました。再度ログインしてください。";
}
//ファイルオブジェクトを作成し、ディレクトリが存在するかどうかを確認します
File myFile=new File(strDealPath);
// フォルダーが存在するかどうかを確認します。
if(!myFile.exists()){
strErr="選択したフォルダは存在しません。もう一度選択してください!";
}
//さまざまなパラメータに従って、対応する操作を実行します
if(request.getParameter("act")==null || request.getParameter("act").equals("") ||
request.getParameter("act").equals("login"))
{
if(request.getParameter("ユーザー名")!=null && request.getParameter("ユーザーパス")!=null)
{
// 正しい MD5 暗号化パスワード
//文字列 userpass="OEEO99107DC8C1EE2E06666B965601EF";
if(request.getParameter("ユーザー名").equals(ユーザー名) && (request.getParameter("ユーザーパス")).equals(ユーザーパス))
{
session.putValue("ログイン","パス");
response.sendRedirect(request.getRequestURI()+"?act=show");
}
}
それ以外 {
strStat="ログイン";
strErr="ログインしていないか、ログインがタイムアウトしました。再度ログインしてください。";
}
}else if(request.getParameter("act").equals("show")){
//デフォルトでは、ページには通常通りファイル情報が表示されます statStat="show"
strStat="表示";
//ファイルリスト配列を作成
fileArr=myFile.listFiles();
}else if(request.getParameter("act").equals("edit"))
{
//ファイル内容を編集するページ
//request.getParameter("file")の有無と、対応するファイルが存在する場合は編集操作を実行し、存在しない場合はエラーメッセージを表示します。
if (!(request.getParameter("file")==null || request.getParameter("file").equals(""))){
ファイル fileEdit=new
File(UnicodeTo Chinese(request.getParameter("path"))+UnicodeTo Chinese(request.getParameter("file")));
if(fileEdit.exists())
//ファイル編集操作は実際にはページの表示を変更し、テキストエリアを使用して編集用のファイル情報を表示します。
strStat="編集";
それ以外
// エラーメッセージを表示する
strErr="選択したファイルは存在しません。もう一度選択してください!";
}それ以外{
strErr="編集するファイルが選択されていません。もう一度選択してください!";
}
}else if(request.getParameter("act").equals("editDo"))
{
// 変更した内容をファイルに書き込み、変更ページに戻ります
if (!(request.getParameter("file")==null || request.getParameter("file").equals("")))
{
ファイル fileEdit=new
File(UnicodeTo Chinese(request.getParameter("path"))+UnicodeTo Chinese(request.getParameter("file")));
if(fileEdit.exists())
{
//ファイル編集操作は実際には、ファイルの内容を変更した後にテキストエリアを使用してページにファイルの内容を表示し、編集を続行したり、
変更の効果を表示したりすることです。
if(!(request.getParameter("fileData")==null))
{
試す{
PrintWriter pwEdit =null;
pwEdit=new PrintWriter(new
FileOutputStream(UnicodeTo Chinese(request.getParameter("path"))+UnicodeTo Chinese(request.getParameter("file"))));
pwEdit.println(UnicodeTo Chinese(request.getParameter("fileData")));
pwEdit.close();
response.sendRedirect(request.getRequestURI()+"?path="+
UnicodeTo Chinese(request.getParameter("path")) +"&file="+ UnicodeTo Chinese(request.getParameter("file")) +"&act=edit" );
戻る;
}catch(例外 e){
strErr="ファイル書き込みエラー。もう一度選択してください!";
}
}それ以外{
strErr="ファイルの内容を変更するパラメータがありません。もう一度選択してください!";
}
}それ以外
// エラーメッセージを表示する
strErr="選択したファイルは存在しません。もう一度選択してください!";
}それ以外{
strErr="編集するファイルが選択されていません。もう一度選択してください!";
}
}else if(request.getParameter("act").equals("createF"))
{
//新規フォルダ作成ページを表示する
strStat="createF";
}else if(request.getParameter("act").equals("createFDo"))
{
//新しいフォルダーを作成
String strFoldName=strDealPath+UnicodeTo Chinese(request.getParameter("foldName")).trim()+"\"
//out.println(strFoldName);
//out.close();
ファイル fileCreateF=new File(strFoldName);
if(!fileCreateF.exists())
{
試す{
fileCreateF.mkdir();
response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");
戻る;
}catch(例外 e){
strErr="新しいフォルダーの作成に失敗しました!";
}
}
それ以外
{
strErr="指定されたフォルダ名は既存のフォルダ名と同じです。新しいフォルダ名を指定してください!";
}
}else if(request.getParameter("act").equals("delFoldDo"))
{
//削除操作
試す{
文字列 strFileDelF=strDealPath+UnicodeTo Chinese(request.getParameter("fold"))+"\";
ファイル fileDelF=新しいファイル(strFileDelF);
if(fileDelF.exists()){
ファイル[] fileArrCheck=fileDelF.listFiles();
if(!(fileArrCheck.length>0))
{
fileDelF.delete();
response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");
戻る;
}それ以外
{
strErr="フォルダーにはまだファイルが含まれています。すべてのファイルを削除してから、フォルダーを削除してください。";
}
}それ以外{
strErr="削除するフォルダが存在しません。再度選択してください。";
}
}catch(例外 e)
{
strErr="フォルダ削除操作エラー!";
}
}else if(request.getParameter("act").equals("renameFold"))
{
strStat="リネームフォールド";
}else if(request.getParameter("act").equals("renameFoldDo"))
{
//フォルダー名の変更操作
//パラメータに基づいてフォルダー名に変更があるかどうかを判断します
if(request.getParameter("changeDo").equals("true"))
{
//ファイル名があり、名前変更が発生する
試す{
String strFileRenameF=strDealPath+UnicodeTo Chinese(request.getParameter("fold"))+"\";
ファイル fileRenameF=新しいファイル(strFileRenameF);
String strFileRenameToF=strDealPath+UnicodeTo Chinese(request.getParameter("newFoldName"))+"\";
ファイル fileRenameToF=新しいファイル(strFileRenameToF);
// 名前を変更したフォルダーが存在するかどうかを確認します
if(fileRenameF.exists()){
//新しいフォルダー名が既存のフォルダーと同じ名前かどうかを判断します
if(!fileRenameToF.exists())
{
fileRenameF.renameTo(fileRenameToF);
response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");
戻る;
}それ以外
{
strErr="指定されたフォルダ名は既存のフォルダ名と同じです。新しいフォルダ名を指定してください!";
}
}それ以外{
strErr="名前を変更するフォルダーが存在しません。もう一度選択してください。";
}
}catch(例外 e)
{
strErr="フォルダ名の変更操作エラー!";
}
}
}else if(request.getParameter("act").equals("renameFile"))
{
strStat="ファイル名の変更";
}else if(request.getParameter("act").equals("renameFileDo"))
{
//ファイル名の変更操作
//パラメータに基づいてファイル名に変更があるかどうかを判断します
if(request.getParameter("changeDo").equals("true"))
{
//ファイル名があり、名前変更が発生する
試す{
String strFileRenameFi=strDealPath+UnicodeTo Chinese(request.getParameter("file"));
ファイル fileRenameFi=新しいファイル(strFileRenameFi);
String strFileRenameToFi=strDealPath+UnicodeTo Chinese(request.getParameter("newFileName"));
ファイル fileRenameToFi=new File(strFileRenameToFi);
// 名前を変更したファイルが存在するかどうかを判断します
if(fileRenameFi.exists()){
//新しいファイル名が既存のファイルと同じかどうかを判断します
if(!fileRenameToFi.exists())
{
fileRenameFi.renameTo(fileRenameToFi);
response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");
戻る;
}それ以外
{
strErr="指定されたファイル名は既存のファイル名と同じです。新しいファイル名を指定してください!";
}
}それ以外{
strErr="名前を変更するファイルが存在しません。再度選択してください。";
}
}catch(例外 e)
{
strErr="ファイル名の変更操作エラー!";
}
}
}else if(request.getParameter("act").equals("delFileDo"))
{
//削除操作
試す{
String strFileDelFi=strDealPath+UnicodeTo Chinese(request.getParameter("file"));
ファイル fileDelFi=新しいファイル(strFileDelFi);
if(fileDelFi.exists())
{
fileDelFi.delete();
response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");
戻る;
}それ以外{
strErr="削除するファイルが存在しません。再度選択してください。";
}
}catch(例外 e)
{
strErr="ファイル削除操作エラー!";
}
}else if(request.getParameter("act").equals("uploadFile"))
{
strStat="アップロードファイル";
}else if(request.getParameter("act").equals("uploadFileDo"))
{
%>
<jsp:useBean id="mySmartUpload"scope="page" class="com.jspmart.upload.SmartUpload" />
<%
//ファイルのアップロード操作
mySmartUpload.initialize(pageContext);
mySmartUpload.setTotalMaxFileSize(1000000);
試してください。
mySmartUpload.upload();
mySmartUpload.save(strDealPath);
response.sendRedirect(request.getRequestURI()+"?path="+strDealPath+"&act=show");
戻る;
} catch (例外 e) {
strErr="ファイルのアップロード エラー。ファイル サイズ制限の 1M を超えていないか確認してください。";
}
}
%>
<%
out.println(strStat);
%>
<HTML><HEAD><TITLE>/ のディレクトリ リスト</TITLE>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR></HEAD>
<BODY bgColor=white>
<div align="center">
<table border=0 cellpadding=5 cellpacing=0 width="90%">
<本体>
<tr>
<td align=left bgcolor=#000066 valign=bottom><font color=#ffffff face=宋体
size=4 新しい ,?times><b> ウェブサイト ファイル マネージャー</b></font></td>
<td align=right bgcolor=#000066 valign=bottom><font color=#ffffff face=宋体
size=4 ローマ字??times><b> <strong><%=request.getContextPath()%></strong></b></font></td>
</tr>
</tbody>
</テーブル>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size="2"><b>物理パス:</b><%=strDealPath%></font></td>
</tr>
</テーブル>
<br>
<% if (strStat.equals("login")){%>
<table width="300" border="0" cellpacing="1" cellpadding="0" >
<tr>
<td height="200" valign="top" align="center">
<p align="center">
<table width="100%" border="0" cellpacing="1" cellpadding="5" bgcolor=#999999 class=a9px>
<tr>
<td bgcolor="#cccccc"><font size=+2>ログイン</font></td>
</tr>
<tr>
<td bgcolor="#FFFFFF" valign="top" align="center">
<table width="100%" border="0" cellpacing="0" cellpadding="0">
<フォーム名=データフォームメソッド=ポストアクション='<%=request.getRequestURI()%>?act=login'>
<tr>
<td width="100"><b><font size="-1">ログイン名: </font></b></td>
<td>
<入力最大長=16
名前="ユーザー名" 値="">
</td>
</tr>
<tr>
<td width="100"><b><font size="-1">パスワード:</font></b></td>
<td>
<入力クラス=stedit maxlength=16
名前="ユーザーパス" 値="">
</td>
</tr>
</form>
</テーブル>
<br>
<table border=0 cellpadding=0 cellpacing=0>
<本体>
<tr>
<td>
<input name=update onClick="javascript:if (checkform()==false);" type=button value="ログイン">
</td>
<td> </td>
<td> </td>
</tr>
</tbody>
</テーブル>
<br>
</td>
</tr>
</テーブル>
</td>
</tr>
</テーブル>
<% //エラーメッセージ表示
}else if(strErr!=""){
%>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>操作エラー</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<form name=dataForm2
action="<%=request.getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&fold=<%=UnicodeTo Chinese(reques
t.getParameter(" Fold"))%>&act=renameFoldDo"method="post">
<本体>
<tr bgcolor=#cccccc>
<td align=left bgcolor="#cccccc"><strong><font size="-1">エラーの理由: </font></strong></td>
</tr>
<tr>
<td align=left><TT><font color="red"><%=strErr%></font></TT>
</td>
</tr>
<tr>
<td bgcolor=#cccccc align="center"><TT>[ <a href="javascript:history.go(-1);">返品操作</a> ]</TT> <tt >[
<a href="<%=request.getRequestURI()%>
?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=show">ディレクトリに戻る</a>
]<input type=hidden name="changeDo" value="false"></tt> </td>
</tr>
</tbody>
</form>
</テーブル>
<%
}else if(strStat.equals("show")){
//通常通りページを表示します
%>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>ディレクトリ リスト:</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<本体>
<tr bgcolor=#cccccc>
<td align=left><font size=+1><strong><font size="-1">名前</font></strong></font><TT> (クリックして対応するディレクトリに入ります)< /font> TT></td>
<td align=center><font size=+1><strong><font size="-1">変更時間</font></strong></font></td>
<td align=center><b><font size="-1">名前を変更</font></b></td>
<td align=center><b><font size="-1">削除</font></b></td>
</tr>
<%
//テーブル行の初期色を表示します。
文字列 bgColor="";
//ルートディレクトリではない場合は、上位ディレクトリへのリンクを表示します
if(!(strDealPath.equals(strSysPath))){%>
<tr bgcolor=<%=bgColor%>>
<td align=left > <tt><font color=#000066 face=WingDings
size=4>0</font>
<a title="クリックして上のディレクトリに入ります" href="<%=request.getRequestURI()%>
?path=<%=(myFile.getParent())+" "%>&act=show ">上位ディレクトリ</a></tt></td>
<td align=right> </td>
<td align=center> </td>
<td align=center> </td>
</tr>
<%}
for(int i=0; i<fileArr.length; i++){
// フォルダの場合は表示する
if(fileArr[i].isDirectory()){
//カラーインターレース変換
bgColor=bgColor.equals("#eeeeee") "" : "#eeeeee";
%>
<tr bgcolor=<%=bgColor%>>
<td align=left > <tt><FONT color=#000066 face=WingDings
size=4>0</FONT>
<a title="クリックして対応するディレクトリを入力します" href="<%=request.getRequestURI()%>
?path=<%=strDealPath+fileArr[i].getName() +" \"%>&act=show"><%=fileArr[i].getName()%></a></t
t></td>
<td align=center><tt><%=(new Date(fileArr[i].lastModified()))%></tt></td>
<td align=center><TT>
<a href="<%=request.getRequestURI()%>
?path=<%=strDealPath%>&fold=<%=fileArr[i].getName()%>&act=renameFold">名前を変更</a></TT></td>
<form name="dataFormFold<%=i%>" method="post"
action="<%=request.getRequestURI()%>?path=<%=strDealPath%>&fold=<%=fileArr[i]。 getName()%>&act=delFoldDo"><td
align=center><TT><a href="javascript:if(confirm('本当にこのフォルダを削除してもよろしいですか。すべてのコンテンツが利用できなくなりますか?
' )){ window.dataFormFold<%=i%>.submit();}">削除</a></TT></td></form>
</tr>
<%}
} %>
<tr align="center">
<td bgcolor=#cccccccolspan=4><TT>[ <a href="<%=request.getRequestURI()%>?path=<%=strDealPath%>&act=createF">新しいフォルダ
</a>
]</TT></td>
</tr>
</tbody>
</テーブル>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>ファイルリスト:</strong></font></td>
</tr>
</テーブル>
<TABLE align=center cellPadding=5 cellSpacing=0 width="90%">
<TBODY>
<TR bgColor=#cccccc>
<TD align=left><FONT size=+1><STRONG><font size="-1">名前</font></STRONG></FONT><TT> (クリックして対応するファイルを編集します)< /TT></TD>
<TD align=center><FONT size=+1><strong><font size="-1">サイズ</font></strong></FONT></TD>
<TD align=center><FONT size=+1><STRONG><font size="-1">変更時間</font></STRONG></FONT></TD>
<TD align=center><b><font size="-1">名前を変更</font></b></TD>
<TD align=center><b><font size="-1">削除</font></b></TD>
</TR>
<%
bgColor="#eeeeee";
if(fileArr.length!=0){
for(int i=0; i<fileArr.length; i++){
// ファイルの場合は表示する
if(fileArr[i].isFile()){
bgColor=bgColor.equals("#eeeeee") "" : "#eeeeee";
%>
<TR bgColor=<%=bgColor%>>
<TD align=left > <TT><FONT color=#000066 face=WingDings
size=4>3</FONT>
<a title="クリックして対応するファイルを編集" href="<%=request.getRequestURI()%>
?path=<%=strDealPath%>&file=<%=fileArr[ i].getName()%>&act=edit"><%=fileArr[i].getName()%></
a></TT></TD>
<TD align=center><TT><%=fileArr[i].length()%></TT></TD>
<TD align=center><TT><%=(new Date(fileArr[i].lastModified()))%></TT></TD>
<TD align=center><TT>
<a href="<%=request.getRequestURI()%>
?path=<%=strDealPath%>&file=<%=fileArr[i].getName()%>&act=renameFile">名前を変更</a></TT></TD>
<form name="dataFormFile<%=i%>" method="post"
action="<%=request.getRequestURI()%>?path=<%=strDealPath%>&file=<%=fileArr[i]。 getName()%>&act=delFileDo"><TD
align=center><TT><a href="javascript:if(confirm('本当にこのファイルを削除しますか? コンテンツは利用できなくなります?
') ){window.dataFormFile <%=i%>.submit();}">削除</a></TT></TD></form>
</TR>
<%}
}
}else {%>
<TR>
<TD align=left > <TT>ファイルがありません</TT></TD>
<TD align=right> </TD>
<TD align=right> </TD>
<TD align=center> </TD>
<TD align=center> </TD>
</TR>
<%}%>
<TR align="center">
<TD bgColor=#cccccccolSpan=5><TT>[ <a href="<%=request.getRequestURI()%>?path=<%=strDealPath%>&act=uploadFile">
ファイル
をアップロード</a> ]</TT></TD>
</TR>
</TBODY>
</テーブル>
<%
//通常表示状態終了
}else if(strStat.equals("編集")){
//ファイル編集状況
BufferedReader bufReadIn=new BufferedReader(new
FileReader(UnicodeTo Chinese(request.getParameter("path"))+UnicodeTo Chinese(request.getParameter("file"))));
文字列 strContext="";
文字列strReadLine="";
%>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>ファイルを編集:</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<form name=dataForm
action="<%=request.getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&file=<%=UnicodeTo Chinese(reques
t.getParameter("ファイル"))%>&act=editDo"メソッド="post">
<本体>
<tr bgcolor=#cccccc>
<td align=left><font size=+1><strong><font size="-1">ファイル名</font></strong></font><tt><font color=#000066
face=ウィングディングス
size=4>3</font><%=(UnicodeTo Chinese(request.getParameter("path"))+UnicodeTo Chinese(request.getParameter("file")))%></tt></td>
</tr>
<tr>
<td align=center><textarea name="fileData" rows=18cols=70 Wrap=""OFF""><%
while((strReadLine=bufReadIn.readLine())!=null)
out.println(strReadLine);
bufReadIn.close();%></textarea></td>
</tr>
<tr>
<td bgcolor=#cccccc align="center">
<TT>[ <a href="javascript:window.dataForm.submit();">コンテンツを送信</a> ]</TT> <TT>[ <a
href="<%=request. getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=show">ディレクトリに戻る</a> ]</TT>
</td>
</tr>
</tbody>
</form>
</テーブル>
<%
}else if(strStat.equals("createF")){
%>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>フォルダの作成:</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<form name=dataForm
action="<%=request.getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=createFDo" method="post">
<本体>
<tr bgcolor=#cccccc>
<td align=left><font size=+1><strong><font size="-1">作成するフォルダは次の場所にあります</font></strong></font><font color=# 000066
face=ウィングディンス
size=4>0</font><tt><%=(UnicodeTo Chinese(request.getParameter("path")))%></tt><font size=+1><strong><font size="- 1">下
</font></strong></font></td>
</tr>
<tr>
<td align=left>
<TT>新しいフォルダー名:</TT><input type=text name=foldName value="" maxlength="50" size="50">
</td>
</tr>
<tr>
<td bgcolor=#cccccc align="center"> <tt>[ <a href="javascript:if (checkForm()==false);">コンテンツを送信</a>
]</tt> <tt>[
<a href="<%=request.getRequestURI()%>
?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=show">目次に戻る</a>
]</tt> </td>
</tr>
</tbody>
</form>
</テーブル>
<%
}else if(strStat.equals("renameFold"))
{ %>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>フォルダの名前を変更:</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<form name=dataForm2
action="<%=request.getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&fold=<%=UnicodeTo Chinese(reques
t.getParameter(" Fold"))%>&act=renameFoldDo"method="post">
<本体>
<tr bgcolor=#cccccc>
<td align=left><font size=+1><strong><font size="-1">名前を変更するフォルダ</font></strong></font><font color=#000066
face =ウィングディングス
size=4>0</font><tt><%=(UnicodeTo Chinese(request.getParameter("path"))+UnicodeTo Chinese(request.getParameter("fold"))+" \")% ><
/tt ></td>
</tr>
<tr>
<td align=left> <tt>名前変更されたフォルダ名:</tt>
<input type=text name=newFoldName value="<%=UnicodeTo Chinese(request.getParameter("fold"))%>" maxlength="50"
size="50">
</td>
</tr>
<tr>
<td bgcolor=#cccccc align="center"> <tt>[ <a href="javascript:if (checkForm2()==false);">コンテンツを送信</a>
]</tt> <tt>[
<a href="<%=request.getRequestURI()%>
?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=show">目次に戻る</a>
]<input type=hidden name="changeDo" value="false"></tt> </td>
</tr>
</tbody>
</form>
</テーブル>
<%
}else if(strStat.equals("renameFile"))
{%>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>ファイル名の変更:</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<form name=dataForm3
action="<%=request.getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&file=<%=UnicodeTo Chinese(reques
t.getParameter(" file"))%>&act=renameFileDo" method="post">
<本体>
<tr bgcolor=#cccccc>
<td align=left><font size=+1><strong><font size="-1">名前を変更したいファイル</font></strong></font><font color=#000066
face =ウィングディングス
サイズ= 4> 3 </font> <tt> <%=(unicodetochinese(request.getParameter( "path"))+unicodetochinese(request.getParameter( "file")))%> </td>
</td>
</tr>
<tr>
<td align=left> <tt>名前変更されたファイル名:</tt>
<input type=text name=newFileName value="<%=UnicodeTo Chinese(request.getParameter("file"))%>" maxlength="50"
size="50">
</td>
</tr>
<tr>
<td bgcolor=#cccccc align="center"> <tt>[ <a href="javascript:if (checkForm3()==false);">コンテンツを送信</a>
]</tt> <tt>[
<a href="<%=request.getRequestURI()%>
?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=show">目次に戻る</a>
】
<input type=hidden name="changeDo" value="false">
</tt> </td>
</tr>
</tbody>
</form>
</テーブル>
<%
}else if(strStat.equals("uploadFile")){
%>
<table width="90%" border="0" cellpacing="0" cellpadding="5">
<tr>
<td><font size=+2><strong>ファイルのアップロード:</strong></font></td>
</tr>
</テーブル>
<table align=center cellpadding=5 cellpacing=0 width="90%">
<form name=dataForm4
action="<%=request.getRequestURI()%>?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=uploadFileDo" method="post"
ENCTYPE="multipart /フォームデータ">
<本体>
<tr bgcolor=#cccccc>
<td align=left><font size=+1><strong><font size="-1">アップロードするファイルは</font></strong></font><font color=#にあります000066
顔 =WingDings
size=4>0</font><tt><%=(UnicodeTo Chinese(request.getParameter("path")))%></tt><font size=+1><strong><font size="- 1">下
</font></strong></font></td>
</tr>
<tr>
<td align=left> <tt>アップロードしたファイルを選択します:</tt>
<INPUT TYPE="FILE" NAME="ファイル名" SIZE="30"></td>
</tr>
<tr>
<td bgcolor=#cccccc align="center"> <tt>[ <a href="javascript:if (checkForm4()==false);">コンテンツを送信</a>
]</tt> <tt>[
<a href="<%=request.getRequestURI()%>
?path=<%=UnicodeTo Chinese(request.getParameter("path"))%>&act=show">目次に戻る</a>
】
</tt> </td>
</tr>
</tbody>
</form>
</テーブル>
<%
}
%>
<br>
<br>
<時間>
<TT>©著作権: Jarard·Ast バージョン: 簡体字中国語 1.00</TT>
<br><TT>ご意見やご提案がございましたら、 <a href=" mailto:[email protected]"><font color=red>[email protected]</font></a></ までご連絡ください。 TT>
</div>
</BODY></HTML>
<スクリプト言語=javascript>
<!--
<%
//異なるパラメータに基づいて異なる検出パラメータを表示する関数
if(strStat.equals("login")) {%>
関数チェックフォーム()
{
var Checkblank = /^(s*|( )|(.))*$/
if (Checkblank.test(dataform.username.value))
{
alert("ログイン名を空にすることはできません!");
false を返します。
}
if (Checkblank.test(dataform.userpass.value))
{
alert("パスワードを空にすることはできません!");
false を返します。
}
window.dataform.submit()
;
<%}else if(strStat.equals("createFold")) {%>
関数 checkForm()
{
var Checkblank = /^(s*|( )|(.))*$/;
if (Checkblank.test(dataForm.foldName.value))
{
alert("新しいフォルダーの名前を空にすることはできません!");
dataform.foldname.focus();
false を返します。
}
var SPECIAL_STR = " \/:*? "><|";
for(i=0;i<(dataForm.foldName.value).length;i++)
{
if (SPECIAL_STR.indexOf((dataForm.foldName.value).charAt(i)) !=-1)
{
alert("フォルダ名には次の文字を含めることはできません\/:*? "><|");
dataForm.foldName.focus();
false を返します。
}
}
window.dataform.submit();
}
<%}else if(strStat.equals("renameFold")) {%>
関数 checkForm2()
{
var Checkblank = /^(s*|( )|(.))*$/;
if (Checkblank.test(dataForm2.newFoldName.value))
{
alert("名前を変更したフォルダー名を空にすることはできません!");
dataForm2.newFoldName.focus();
false を返します。
}
var SPECIAL_STR = " \/:*? "><|";
for(i=0;i<(dataForm2.newFoldName.value).length;i++)
{
if(special_str.indexof((dataform2.newfoldname.value).charat(i))!= -1)
{
alert("フォルダ名には次の文字を含めることはできません\/:*? "><|");
dataForm2.newFoldName.focus();
false を返します。
}
}
//名前変更後のファイル名が元のファイル名と異なる場合は、名前変更アクションが実際に発生したことを示すパラメータをマークします。
if(dataForm2.newFoldName.value!="<%=UnicodeTo Chinese(request.getParameter("fold"))%>")
{
window.dataForm2.changeDo.value="true";
}
それ以外
{
alert("新しいフォルダ名を入力してください!");
dataForm2.newFoldName.focus();
false を返します。
}
window.dataForm2.submit()
;
<%}else if(strStat.equals("renameFile"))
{%>
関数 checkForm3()
{
var Checkblank = /^(s*|( )|(.))*$/;
if (Checkblank.test(dataForm3.newFileName.value))
{
alert("名前を変更したフォルダー名を空にすることはできません!");
dataForm3.newFileName.focus();
false を返します。
}
var SPECIAL_STR = " \/:*? "><|";
for(i=0;i<(dataForm3.newFileName.value).length;i++)
{
if (SPECIAL_STR.indexOf((dataForm3.newFileName.value).charAt(i)) !=-1)
{
alert("ファイル名に次の文字を含めることはできません\/:*? "><|");
dataForm3.newFileName.focus();
false を返します。
}
}
//名前変更後のファイル名が元のファイル名と異なる場合は、名前変更アクションが実際に発生したことを示すパラメータをマークします。
if(dataForm3.newFileName.value!="<%=UnicodeTo Chinese(request.getParameter("file"))%>")
{
window.dataForm3.changeDo.value="true";
}
それ以外
{
alert("新しいファイル名を入力してください!");
dataForm3.newFileName.focus();
false を返します。
}
window.dataForm3.submit();
}
<%}else if(strStat.equals("uploadFile")){%>
関数 checkForm4()
{
var Checkblank = /^(s*|( )|(.))*$/;
if (Checkblank.test(dataForm4.fileName.value))
{
alert("名前を変更したフォルダー名を空にすることはできません!");
dataform4.filename.focus();
false を返します。
}
window.dataForm4.submit()
}
<%}%>
//-->
</スクリプト>