• ベストアンサー

直下のディレクトリのファイルの表示

HTMLファイルが存在する 直下のディレクトリのファイル名を表示するように 前記HTMLファイルをJavaScriptで記述することができるのでしょうか? 例えば 前記HTMLがc:¥xにあり前記HTMLによってc:¥x¥images にあるファイルをすべて列挙するということはできるでしょうか?

  • nubou
  • お礼率62% (293/470)

質問者が選んだベストアンサー

  • ベストアンサー
  • madman
  • ベストアンサー率24% (612/2465)
回答No.1

location.pathname で、自分のパス名が取得できます。 サンプル作ってみたので、試してみてください。 ---サンプル--- <HTML> <HEAD> <TITLE>TEST1</TITLE> <SCRIPT type="text/javascript"> function op() { F1.SAMPLE.value = location.pathname; } </SCRIPT> <BODY> <FORM ACTION="." NAME="F1"> <INPUT TYPE="TEXT" NAME="SAMPLE" SIZE="100"></INPUT><BR> <BUTTON NAME="START" onclick="op()">Click</BUTTON> </FORM> </BODY> </HTML>

nubou
質問者

お礼

実は今いるディレクトリの下のimagesディレクトリに どんどん.jgp等の画像ファイルをいれて そのスライドショーをしようと思ったのですが 今のところdosでdir>x.txtを実行し x.txtの内容をコピーして文字列変数=””の括弧ないにペーストする方法でしています この方法ではスライドショーが実現しています マニュアル操作が必要なので自動化したいのです 何か方法があれば押しててください

その他の回答 (1)

  • ryota2
  • ベストアンサー率43% (61/140)
回答No.2

多分無理でしょう。 JavaScriptはファイル関連に弱いです。いや、弱くしてあります。 やるとすれば、 <a href="./images/"> としてディレクトリを開くぐらいですね。 マクロを記録したエクセルをフレームで埋め込めば出来るかな?

nubou
質問者

お礼

みにくいので送りなおします <html> <head> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>スライドショー</title> </head> <body bgcolor="#ffffff" onload="slide_go()"> <script language="JavaScript" type="text/javascript"> var str= "[.] [..] 03.JPG 04.JPG 06.JPG "+ "08.JPG GOMI.TXT LAYOUT.JPG BGAMEX.JPG BGCC.JPG "+ "BGDISCOV.JPG BGJCB.JPG BGMC.JPG BGVISA.JPG CNNCTERR.JPG"+ "CONNECT.JPG DIALTONE.JPG DRPSHDW.JPG ERROR.JPG EULA.JPG "+ "HNDSHAKE.JPG INSTALLD.JPG LOGO.JPG MSN.JPG PID.JPG "+ "PK.JPG REG.JPG START.JPG STATBACK.JPG STATBAR.JPG "+ "TAPI.JPG TOOBUSY.JPG WATERMRK.JPG 02.JPG 01.JPG "+ "00.JPG 05.JPG 07.JPG 09.JPG "+ " 37 個 1,009,917 バイトのファイルがあります."+ " 2 ディレクトリ 2,221,506,560 バイトの空きがあります."; var newstr;var images=new Array(0);var names=new Array(0);var i=0; while(true) { newstr=str.match(/\s\w+\.jpg/i);if(newstr==null)break; newstr=(""+newstr).match(/\w+\.\w+/i); images[i]=new Image(300,300); images[i].src="images\\"+newstr; names[i++]=""+newstr; str=str.replace(/\s\w+\.jpg/i,""); } var timer;var status=true; function slide_go() { if(images.length<=i)i=0; var x=document.getElementById("filename"); var txt=document.createTextNode(names[i]); x.removeChild(x.firstChild); x.appendChild(txt); document.myimage.src=images[i++].src; timer=setTimeout("slide_go()",1000); } function slide_stop() { if(status) clearTimeout(timer);else slide_go();status=!status; } </script> <center> <img name="myimage" width="300" height="300" onclick="slide_stop()"> <div id="filename">FileName</div> </center> </body> </html>

nubou
質問者

補足

dir>x.txt; としてx.txtの内容をstrにコピーで書き下し以下のようにするしかないのでしょうか? <html> <head> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>スライドショー</title> </head> <body bgcolor="#ffffff" onload="slide_go()"> <script language="JavaScript" type="text/javascript"> var str= " . <DIR> 02-12-17 5:46 . .. <DIR> 02-12-17 5:46 .. 03 JPG 14,305 99-05-05 22:22 03.jpg 04 JPG 13,760 99-05-05 22:22 04.jpg 06 JPG 4,397 99-05-05 22:22 06.jpg 08 JPG 4,642 99-05-05 22:22 08.jpg GOMI TXT 0 02-12-17 12:37 gomi.txt LAYOUT JPG 86,306 99-05-05 22:22 LAYOUT.JPG BGAMEX JPG 8,137 99-05-05 22:22 BGAMEX.JPG BGCC JPG 12,454 99-05-05 22:22 BGCC.JPG BGDISCOV JPG 17,564 99-05-05 22:22 BGDISCOV.JPG BGJCB JPG 24,884 99-05-05 22:22 BGJCB.JPG BGMC JPG 56,408 99-05-05 22:22 BGMC.JPG BGVISA JPG 18,971 99-05-05 22:22 BGVISA.JPG CNNCTERR JPG 14,022 99-05-05 22:22 CNNCTERR.JPG CONNECT JPG 34,040 99-05-05 22:22 CONNECT.JPG DIALTONE JPG 50,987 99-05-05 22:22 DIALTONE.JPG DRPSHDW JPG 6,772 99-05-05 22:22 DRPSHDW.JPG ERROR JPG 52,321 99-05-05 22:22 ERROR.JPG EULA JPG 53,085 99-05-05 22:22 EULA.JPG HNDSHAKE JPG 16,519 99-05-05 22:22 HNDSHAKE.JPG INSTALLD JPG 48,438 99-05-05 22:22 INSTALLD.JPG LOGO JPG 1,152 99-05-05 22:22 LOGO.JPG MSN JPG 53,073 99-05-05 22:22 MSN.JPG PID JPG 40,050 99-05-05 22:22 PID.JPG PK JPG 4,979 99-05-05 22:22 PK.JPG REG JPG 45,233 99-05-05 22:22 REG.JPG START JPG 42,861 99-05-05 22:22 START.JPG STATBACK JPG 41,108 99-05-05 22:22 STATBACK.JPG STATBAR JPG 16,349 99-05-05 22:22 STATBAR.JPG TAPI JPG 43,163 99-05-05 22:22 TAPI.JPG TOOBUSY JPG 13,013 99-05-05 22:22 TOOBUSY.JPG WATERMRK JPG 8,605 99-05-05 22:22 WATERMRK.JPG 02 JPG 20,424 99-05-05 22:22 02.jpg 01 JPG 33,371 99-05-05 22:22 01.jpg 00 JPG 24,757 99-05-05 22:22 00.jpg 05 JPG 74,300 99-05-05 22:22 05.jpg 07 JPG 4,791 99-05-05 22:22 07.jpg 09 JPG 4,676 99-05-05 22:22 09.jpg 37 個 1,009,917 バイトのファイルがあります. 2 ディレクトリ 2,221,518,848 バイトの空きがあります." var newstr;var images=new Array(0);var names=new Array(0);var i=0; while(true) { newstr=str.match(/\s\w+\.jpe?g/i);if(newstr==null)break; newstr=(""+newstr).match(/\w+\.\w+/i); images[i]=new Image(300,300); images[i].src="images\\"+newstr; names[i++]=""+newstr; str=str.replace(/\s\w+\.jpg/i,""); } var timer;var status=true; function slide_go() { if(images.length<=i)i=0; var x=document.getElementById("filename"); var txt=document.createTextNode(names[i]); x.removeChild(x.firstChild); x.appendChild(txt); document.myimage.src=images[i++].src; timer=setTimeout("slide_go()",1000); } function slide_stop() { if(status) clearTimeout(timer);else slide_go();status=!status; } </script> <center> <img src="" name="myimage" width="300" height="300" onclick="slide_stop()"> <div id="filename">FileName</div> </center> </body> </html>

関連するQ&A

  • Program Files直下へのzip展開操作

    C:\Program Files 直下に置いたzipファイルを、右クリからすべて展開→展開とすると、 圧縮(zip形式)フォルダーエラー 指定したディレクトリを作成できませんでした。 ディレクトリがすでに存在してるか、パスが有効では無いのでは? みたいなダイアログ?が開いて、解凍できません。 エクスプローラはタスクバーのアイコンを右クリ→エクスプローラを右クリ→管理者から実行 で開きました。 エクスプローラで、C:\Program Files 直下に置いたzipファイルを、そのまま同じ場所へ(ファイル名と同じ名前のフォルダを作ってその中へ)解凍(展開)するにはどうしたらいいですか? 環境はWin7SP1 x86 Enterpriseです。

  • Windows2000でIISの質問です。http://aaaa,jp/直下のディレクトリを仮想ディレクトリにする方法

    いつも、お世話になっております。 http://aaa.jp/ 指定で表示されるのは、基本でwwwroot直下に なっていると思うのですが、直下だけを、別フォルダにしたいのですが、どうすればよいのでしょうか? \c:inetpub\wwwroot\abc⇒http://aaa.jp/abc/ \c:inetpub\homedir\⇒http://aaa.jp/ こんな感じでできないでしょうか? ■意図 http://aaa.jp/とhttp://aaa.jp/mobile/ を別管理したいので、FTP接続時に wwwrootを見てしまうとwwwroot直下のフォルダがすべてアクセスできてしまうのを避けたい。 ※wwwroot直下のディレクトリをすべて仮想ディレクトリにするというのは無しでお願いします。

  • Windowsエクスプローラ上にある特定ディレクトリ直下にあるファイル数をカウントする方法

    Windowsエクスプローラ上にある特定ディレクトリ直下にあるファイル数をカウントする方法 を教えてください。 さらに ・特定ディレクトリ直下のサブフォルダも含め、ファイル数をカウントする ・サブフォルダも含めるが、任意に指定したディレクトリ直下及びサブフォルダ内に存在するファイルについてはカウント除外する ・隠しファイル及び隠しフォルダはカウント除外する という条件も満たして、カウントしたいです。 この条件を完璧に満たさなくてもよいので、 何か方法がありましたら教えていただければ幸いです。 意味不明でしたら加筆しますのでよろしくお願いします。

  • ディレクトリ(ファイルの一覧)の表示

    現在サーバーを物置代わりに使用しているのですが、ファイル名を直接入力しなくては接続できません。 ディレクトリ(ファイル一覧)表示を可能にすることはできますでしょうか? 加えて、下層のディレクトリではウェルカム指定が無いためHTMLファイルも直接入力しなくてはなりません。 そちらもウェルカムページが表示されるように設定を変更することはできますでしょうか? 通常サーバーへのアクセスはFTPかTelnetで行っています。 サーバーはSunOS 5.8だったと思います。 私はサーバーの管理者ではありません。 よろしくお願いします。

  • javascriptでフォルダ内のファイル名を検索して取得できますか?

    javascript初心者です。宜しくお願いします。 javascriptでフォルダ内のファイル名を検索して取得することは できるのでしょうか? 一応、本やネットで調べてみたんですが そういった記述は見つかりませんでした。 やりたい事のイメージとしては HPに表示させたHTMLファイル名クリックしたら そのHTMLファイルに飛ぶといった処理をHTMLで記述するのではなく、 javascriptでそのファイル名を自動で取得してそれをHP上に表示させたいのです。 いちいちHTMLでファイル名を書いてリンクさせるのが面倒なので そこを自動化できないかと考えたわけですが これはjavascriptでできるでしょうか? 回答宜しくお願いします。

  • jsでルートディレクトリより上のファイル

    jQueryのAjaxでurlをルートディレクトリより上の階層にあるファイルを指定できないのでしょうか? 具体的には以下のような階層になっていてindex.html内で記述されているAjaxでexe/test.phpを呼び出したいと思っています。 サーバールート ├home(ルートディレクトリ) │└index.html └exe   └test.php index.html内に記述されているjavascript $.ajax({  type: 'post',  url: '../exe/test.php',  dataType: 'html',  … }); これを実行すると、FireBugで「404 Not Found http://www.samplecom/exe/test.php」と出てしまいます。 つまり、'../exe/test.php'と指定しているのにルート直下の「exe/test.php」を指定しているかのような結果になってしまっています。 javascriptではルートディレクトリより上のファイルを指定できないのでしょうか?

  • ディレクトリ内のファイルから情報を取得したい

    ローカルのディレクトリ内に、大量のHTML/css/画像などのファイルがあります。 階層も深くまでサブディレクトリになっています。 このディレクトリ内のhtmlのファイルリストを作成し、 ファイル名・パス・ファイル内にh1が記述されているか、されている場合はなんと記載されているかを取得してリスト化(csv)したいです。 どのような方法が考えられるでしょうか? 当方Macを使用していて、規約で新しいアプリケーションをインストールできません。そのためアプリのインストールをしなくてもできる方法があればアドバイスいただきたいです。 どうかよろしくお願いいたします。

  • ディレクトリ内のファイルをDLできないように?

    javascriptのファイルを、hoge.com/js/script.jsというように保存し、 <script type="text/javascript" src="js/script.js"></script> というようにhtmlに記述することが多いと思います。 しかしブラウザで直接ttp://www.hoge.com/js/script.jsをURLに記述するとこのファイルがダウンロードできてしまいます。 ※httpと記述するとこのページでリンクがでてしまうのであえてttpとしています。 ダウンロードができないようにするにはどのようにすればよいのでしょうか? jsフォルダ直下に.htaccessを置いて記述すれば良いような気もするのですが、そもそもjsフォルダ内のファイルを「ダウンロードできないようにする」という記述方法がわかりません。 もしくは他の方法があれば教えてください。 よろしくお願い致します。

    • ベストアンサー
    • HTML
  • ファイルまたはディレクトリが壊れているため、読み取ることができません。

    はじめて質問させていただきます。 WindowsXP マシンで、C のルートにある1つのフォルダにアクセスできず、削除もできません。 他のフォルダやファイルは問題ないようです。 そのフォルダをダブルクリックすると、次のメッセージが表示されます。   ”c:\..\フォルダ名”にアクセスできません。   ファイルまたはディレクトリが壊れているため、読み取ることができません。 さらに、削除すると、次のメッセージが表示されます。   ”フォルダ名”を削除できません。ディレクトリが空ではありません。 イベントログを見ると、NTFS エラー が出ていましたので、チェックディスクを実施したのですが、現象変わらずです。 ご存じの方がいらっしゃいましたら、対処方法を教えていただけたらと思います。 どうぞ、よろしくお願いいたします。

  • ディレクトリ以下のファイル名を取得する

    ディレクトリ名を指定するだけで、 そのディレクトリ内にある全てのデータファイルを 読み込んで処理するプログラムをC++で作ろうと考えています。 その為に、ディレクトリ以下のファイルのファイル名を 取得する方法(命令)を教えて頂きたく思います。 よろしくお願いします。

専門家に質問してみよう