• 締切済み

初歩的な質問なんですが・・・

フォルダ内にあるmp4ファイルを一覧で表示したいのですが, 下のプログラムだと,(psp_drive, "*.MP4", True)のところでエラーが出ます。(psp_drive)にするとエラーは出ないのですが。 何が原因だと思いますか。 Dim video_name As String If System.IO.Directory.Exists(psp_drive) = False Then MessageBox.Show("PSPが見つかりません。") Exit Sub End If CheckedListBox2.Items.Clear() For Each video_name In System.IO.Directory.GetFiles(psp_drive, "*.MP4", True) CheckedListBox2.Items.Add(video_name) Next

みんなの回答

  • dsuekichi
  • ベストアンサー率64% (171/265)
回答No.2

エラーは「Enum 値が有効な範囲を超えています。」ですか? 先ほど提示したURLを読んでいただくと分かると思いますが、 第3引数は「True」や「False」じゃありません。 「SearchOption 列挙体」 (http://msdn2.microsoft.com/ja-jp/library/ms143448.aspx) のどれかを指定する必要があります。

全文を見る
すると、全ての回答が全文表示されます。
  • dsuekichi
  • ベストアンサー率64% (171/265)
回答No.1

なんというエラーですか? また、念のため確認ですが・・・ VBのバージョンは? 3引数の「GetFiles」が使えるのは、「NET Framework 2.0」以降、 つまり、VB2005以降の様ですが・・・ 「Directory.GetFiles メソッド (String, String, SearchOption)」 (http://msdn2.microsoft.com/ja-jp/library/ms143316.aspx

wgwrw023
質問者

補足

すみません。 バージョンはvb2005です。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • フォルダの中の特定のファイルを取得

    (VB.NET) Dim files As String() = System.IO.Directory.GetFiles("C:\aaa", "*", System.IO.SearchOption.AllDirectories) ListBox1.Items.AddRange(files) 上記のコードでは"C:\aaa"以下のすべてのファイルを取得しますが、 例えばGetFilesメソッドの2番目のパラメータに "*.(html|htm)"などと指定して(この場合は無理でしたが)"C:\aaa"以下の拡張子が「html」または「htm」のファイルを取得するにはどうすればよいでしょうか。 "*.html"のように1種類の場合はできるのですが…。

  • JavaScriptの初歩の質問です。教えてください。

    <script language="java script"> <!-- function hello(){ name = prompt("please teach me your name","名前"); flag=confirm("名前は「"+name+"」でいいですか?"); if(flag==true){ alert("こんにちは"+name+"さん alert("hello!"+name+"さん"); } else{ hello(); } } //--> </script> </HEAD> <BODY> <INPUT type="button"value="push bottan please"onClick="hello()"> </BODY> というのを作ってるんですがエラーが出て表示されません。 例文があってそれを自分で入力しているため、入力ミス?とも思うんですが、入力ミスもないような・・・。いったいどこがおかしいんでしょう? 間違えやすい点などもあれば教えてください。

  • vb.net コピーの進捗をプログレスバーで

    質問ばかりでもうしわけないのですが タイトルにあるようにコピーの状況を プログレスバーで表示できたらなと思い作成したのですが うまく動きません。 プログレスバー自身単独では動くのですがコピーと合わせると フリーズしてしまいます。 プログラミング経験と発想力が乏しいのでご教授いただけたら幸いです Private Sub Bt_1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bt_1.Click Dim fname1 As String = "C:\フォルダ名A" Dim fname2 As String = "C:\フォルダ名B" Dim ber1 As Integer If IO.Directory.Exists(fname1) = True Then Me.Lb_1.Text = "テキスト文字" For ber1 = 0 To 20 Me.ProgressBar1.Value = ber1 System.IO.File.Copy("コピー元テキストファイルA", "コピー先テキストファイルA", True) My.Computer.FileSystem.CopyDirectory("コピー元フォルダA", "コピー先フォルダA", True) My.Computer.FileSystem.CopyDirectory("コピー元フォルダB", "コピー先フォルダB", True) Next ber1 If IO.Directory.Exists(fname2) = True Then System.IO.File.Copy("コピー元ファイルB", "コピー先ファイルB", True) End If MessageBox.Show("終了報告テキスト", "タブ名") ' System.IO.Directory.Delete("コピー元", True) Me.ProgressBar1.Value = 0 Application.Exit() こんな感じで作成しております。 ファイル自身が1GBぐらいあるので フリーズしていないかプログレスバーや%表示でしらせたいので 教えていただけると助かります。 よろしくお願いします。

  • C# 2010 アプリケーションの完全なるアンインストール方法?

    C# 2010 アプリケーションの完全なるアンインストール方法? MyPackageフォルダに数ケのアプリケーションプログラムを入れました うち1ケはアンインストールのプログラムであり、下記のような処理が記述されています foreach (string file in System.IO.Directory.GetFiles(@"c:\MyPackage", "*.*")) { System.IO.File.Delete(file); } ----------------(1)  System.IO.Directory.Delete(@"c:\MyPackage"); ------(2) アンインストールの為にこのプログラムを実行すると、フォルダの中に入っている自分自身を削除しようとしますから(1)でエラーとなります また(2)のところで自分自身が入っているフォルダを削除しようとしますから、やはりエラーになります 結局フォルダとアンインストールプログラムが残ってしまいます 一般的なアンインストールプログラムではこの問題をどのようにして解決しているのでしょうか?

  • 指定したもの以外の削除方法

    Visual Basic 2005を使っています。 現在、複数の拡張子をサブフォルダ内も含めて検索し、削除するというものを作ったのですが、それ以外のファイルを削除する方法が分かりません。 作ったプログラムは下のものですがどうすればよいでしょうか? よろしくお願いします。(宣言の部分は省略させてもらっています) a = "場所" //(c\・・・)// if a <> "" then b = system.IO.Directory.GetFiles (a,"*.txt",IO.SeachOption.AllDirectories) for i=0 tob.lengh-1 My.computer.FileSystem.DeleteFile(b(i))  Next End if If ・・・(ここから繰り返して拡張子を増やしています)

  • File.Create で作成に失敗した場合

    初めまして。MS VisualStudio 2005を XPで使用しています VB.netで新規に空のファイルを作成しようとして躓いてしまいました。 やりたい事は、現在の日時が名前になったファイルを作成し、書き込み可能メディアかどうかの判断し、書き込み不可能なメディアの場合処理を終了したいのです。 躓いたのは、ファイルが作れなかった時のエラー処理です。 Try ' hStream が閉じられることを保証するために Try ~ Finally を使用する Try ' 指定したパスのファイルを作成する hStream = System.IO.File.Create("C:\Hoge.txt") Finally ' 作成時に返される FileStream を利用して閉じる If Not hStream Is Nothing Then hStream.Close() End If End Try というのがサンプルであったので、自分なりに変更して下記のようにしました。 → file_name = System.IO.File.Create(f_name) If file_name Is Nothing Then MessageBox.Show("やり直して下さい") file_name.Close() End If →の行で「IOExceptionはハンドルされませんでした」とエラーが出ます 色々調べたのですがどう処理を書けばいいのか分かりません。 分かる方がおられましたら、アドバイスを下さい。

  • VBでのファイル検索について。

    VB.NET初心者です。 プログラム内でとある拡張子のファイルだけを検索してListViewに表示させたいのですが、プログラム自体の都合で、特定のディレクトリだけを検索する、という事ができません。 (そこの部分はまた別の話なので省略^^;) System.IO.Directory.GetFiles~という物を使って上記の様な設定は可能でしょうか? よくわからない文章ですが、よろしくお願いします。

  • javaに関しての質問です (エラー)

    最近javaの勉強を始めたばかりの者です とある動画をみながら勉強をしていたのですが なぜかエラーが出てしまいます。 エラーの内容は... エラー:この文に制御が移ることはありません     if( c== 13){ エラー:return文が指定されていません この二つです、もし解決方法がわかる方がいましたらぜひ教えてくれるとうれしいです 下がソースコードになります。 public class part01 { static String name = "すけさん"; static int lv = 30; public static void main( String[] args )throws java.io.IOException { putzyosyou(); // 序章を表示 putcommnd(); if(lv<40){ putgameover(); }else{ putgamecrear(); } } public static void putzyosyou() { System.out.println("魔王が世界を滅ぼそうとしている。"); System.out.println(name + "はレベルが" + lv + "のツワモノです"); } public static void putcommnd()throws java.io.IOException { System.out.println("1.魔王を倒しに行く"); System.out.println("2.修行する"); System.out.println("3.だれかに頼る"); System.out.println("4.そんなことよりも寝よう"); int c = inputcommnd(); if( c== '1' ){ System.out.println("魔王が現れた!!"); }else if( c== '2' ){ lv += 2; System.out.println ("レベルが"+ lv + "になった!!"); putcommnd(); } } public static int inputcommnd()throws java.io.IOException { int c = System.in.read(); if( c== 10){ return( inputcommnd() ); if( c== 13){ return( inputcommnd() ); } return( c ); } } public static void putgameover() { System.out.println(name + "は負けました。"); System.out.println("GAME OVER"); } public static void putgamecrear() { String str = name + "は魔王を倒しました。"; put( str ); if(lv>120){ System.out.println("レベル" + lv + "なので魔王ゴミでした"); }else if(lv>80){ System.out.println("レベル" + lv + "なので余裕でした"); }else if(lv>50){ System.out.println("レベル" + lv + "なので倒せました"); }else{ System.out.println("レベル" + lv + "なので苦戦しました"); } System.out.println("GAME CREAR"); } static void put( String str ) { System.out.println( str ); } }

    • ベストアンサー
    • Java
  • フォルダのコピー

    csvにかきこまれているフォルダだけ指定されたフォルダにコピーしたいのですが、StreamReaderでcsvを読み込み一行ごとにコピー処理しています。 コピー方法は、 dim di as new system.io.directoryinfo(コピー元フォルダ) for each fi as system.io.fileinfo in di.getfiles() fi.copyto(コピー先フォルダ & fi.name,true() next としています。 フォルダ数が30位で全体の容量は1.2GBぐらいです。 開始すると、応答しなくなりますが、コピーは行われました。 フリーズしてしまうのはなぜでしょうか? もっといい方法があればご指導願います。 主にネットワーク上にあるフォルダにコピーするよていです。

  • VB2010でフォルダを作成したいのですが、

    VB2010でフォルダを作成したいのですが、 System.IO.Directory.Create(strSFpath) とコード記入すると、 CreateはSystem.IO.Directoryのメンバではありません。 とエラー表示されます。 どうしたらフォルダが作成できるか教えてください。 よろしくお願いします。

このQ&Aのポイント
  • 1982年(昭和57年)4月20日、八王子の歯科医院で、歯科医が、女児に歯の治療に使う薬を間違えてフッ化水素を使用て女児を死亡させてしまう事故が起きてしまいました。
  • フッ化水素は一歩間違えれば殺人兵器にもなりうるものであり、ガラスさえも溶かすことができます。
  • しかし、なぜフッ化水素が電車内の危険物に指定されていないのか疑問です。
回答を見る