DOBON.NETプログラミング道掲示板
(現在 過去ログ1 を表示中)

[ 最新記事及び返信フォームをトピックトップへ ]

■33102 / inTopicNo.1)  VB.net ファイルを選択して、指定したフォルダに移動したい
  
□投稿者/ おとやん 一般人(1回)-(2015/09/19(Sat) 17:21:01)
  • アイコン環境/言語:[VB.NET] 
    分類:[.NET] 

    VB.net ファイルを選択して、指定したフォルダに移動したい

    単数もしくは複数ファイルを選択して、指定したフォルダに移動したく思います

    フォームにはボタン1と2を配置しております

    ボタン1は、ファイル選択し、リストボックスに表示させております。
    ボタン2は、選択したファイルを所定フォルダに移動します。
    ボタン1では下記コードで、ファイルを選択する事が出来ましたが、

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    '単数・複数ファイル選択
    OpenFileDialog1.Multiselect = CheckBox1.Checked
    OpenFileDialog1.Filter = "すべてのファイル(*.*)|*.*"
    OpenFileDialog1.InitialDirectory = "c:\"

    If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then

    ListBox1.Items.Clear()

    For Each strFilePath As String In OpenFileDialog1.FileNames

    Dim strFileName As String = IO.Path.GetFileName(strFilePath)

    ListBox1.Items.Add(strFilePath)
    Next
    End If
    End Sub

    ボタン2で行なう、選択してからファイルを移動するには
    どのようにすれば良いでしょうか?

    ボタン2で、C:\TEST フォルダに移動したく思います

    ご教授下さい

引用返信 削除キー/
■33103 / inTopicNo.2)  Re[1]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ Azulean 大御所(457回)-(2015/09/19(Sat) 19:42:13)
  • アイコンNo33102に返信(おとやんさんの記事)
    > ボタン2で行なう、選択してからファイルを移動するには

    選択されているものを得るということですか?
    そうであれば、SelectedItems から取り出すことでしょう。

    参考
    http://homepage1.nifty.com/rucio/main/dotnet/Samples/Sample097ListBoxGetSelectedItem.htm

    > ボタン2で、C:\TEST フォルダに移動したく思います

    File.Move を使うとか。

    参考
    http://dobon.net/vb/dotnet/file/filecopy.html

引用返信 削除キー/
■33104 / inTopicNo.3)  Re[2]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ おとやん 一般人(2回)-(2015/09/19(Sat) 19:49:51)
  • アイコン2015/09/19(Sat) 20:14:28 編集(投稿者)
    2015/09/19(Sat) 20:14:05 編集(投稿者)
    2015/09/19(Sat) 20:13:42 編集(投稿者)

    ありがとうございます

    すみません
    選択という意味を間違えました。

    リストボックス内に表示されているファイル(単数もしくは複数)
    をボタン2をクリックして、TESTフォルダに移動したいです

    OpenFileDialog1.Multiselect = CheckBox1.Checked

    としているから、
    選択されているってことですかね?
引用返信 削除キー/
■33105 / inTopicNo.4)  Re[3]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ Azulean 大御所(458回)-(2015/09/19(Sat) 20:43:52)
  • アイコンNo33104に返信(おとやんさんの記事)
    > リストボックス内に表示されているファイル(単数もしくは複数)
    > をボタン2をクリックして、TESTフォルダに移動したいです

    そうであれば、前述の参考記事で SelectedItems となっている部分を Items に読み替えてもらって、For Each ループ内で File.Move を使うという感じです。
引用返信 削除キー/
■33106 / inTopicNo.5)  Re[4]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ おとやん 一般人(4回)-(2015/09/19(Sat) 21:06:08)
  • アイコンありがとうございます
    ボタン1の部分は問題なしということですね

    可ボタン2をクリックし、リストボックス内に表示されている
    単数もしくは複数のファイルをTestフォルダに移動したく思います

    コードをご教授頂けないでしょうか?

引用返信 削除キー/
■33107 / inTopicNo.6)  Re[5]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ Azulean 大御所(459回)-(2015/09/20(Sun) 00:24:33)
  • アイコン2015/09/20(Sun) 00:26:41 編集(投稿者)

    No33106に返信(おとやんさんの記事)
    > 可ボタン2をクリックし、リストボックス内に表示されている
    > 単数もしくは複数のファイルをTestフォルダに移動したく思います

    それは先にも聞いた状態から変わっていないように思います。


    > コードをご教授頂けないでしょうか?

    状況がよくわからないのですが、先の参考ページの内容と私からのコメントを組み合わせれば実現できませんか?
    書いてある内容がよくわからないということであれば、その部分を示してご質問いただければコメントさせていただきます。

    あくまでコードそのものを求めるのであれば、私からのコメントは控えます。
    (努力は必要だと思っている&書き込みルールの”「実際にコードを書いてください」”で始まる行に抵触すると考えているため)
引用返信 削除キー/
■33108 / inTopicNo.7)  Re[6]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ おとやん 一般人(5回)-(2015/09/20(Sun) 00:36:21)
  • アイコンボタンを1の内容では、リストボックス内に表示されているデータを
    選択できているってことで良いでしょうか?

    これについてはとくにコメントが、なかった為です。


引用返信 削除キー/
■33109 / inTopicNo.8)  Re[7]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ Azulean 大御所(460回)-(2015/09/20(Sun) 00:49:21)
  • アイコン2015/09/20(Sun) 01:04:07 編集(投稿者)

    No33108に返信(おとやんさんの記事)
    > ボタンを1の内容では、リストボックス内に表示されているデータを
    > 選択できているってことで良いでしょうか?

    申し訳ないのですが、言いたいことがよくわかっていません。
    (「どういう状態になればよいのか?」という部分が伝わってこないです…)


    Button1 のクリックイベントでは ListBox に「開くダイアログで選択したファイル」を表示するだけです。
    あくまで「ダイアログを開き、結果を得て、表示するだけ」です。
    それが「選択できている」かどうかは、その言葉で期待している状態がわかっていないので、答えられません。
    たとえば、「開くダイアログで選択した単数・複数のファイルを ListBox に表示できていますか?」であれば「YES」ですが、それは実行して確認すればわかることなので、これが問いたいことだとは思えませんでした。

    また、Multiselect プロパティはあくまで「開くダイアログ」の振る舞いに対する指定です。
    ダイアログを終えた後の話であれば、選択している・していないといった状態には無関与だと思われます。

    -----
    もちろん、ListBox に表示している文字列を取り出して、ファイルのコピーに使うことはできる状態だと考えられます。(厳密にはディレクトリ情報を失っているのでもう少し改良が必要です)
    ただ、この状態から「選択できていますか?」と問われても、何を気にされているのかわからないのです…。
引用返信 削除キー/
■33110 / inTopicNo.9)  Re[8]: VB.net ファイルを選択して、指定したフォルダに移動したい
□投稿者/ Azulean 大御所(461回)-(2015/09/20(Sun) 01:18:13)
  • アイコン現状の状態から「ListBox に表示されているすべてのファイルを移動する」のであれば、次のことが TODO(やらないといけないこと) となるでしょう。

    (1)GetFileName で削ってしまったディレクトリに関する情報をどこかに記憶すること。
     候補としてはフィールド変数。FileNames で得られるファイル群は同じディレクトリにあるはずなので、1個覚えておけば十分。
    (2)ListBox に追加した文字列が入っている Items を元にループ。
     フィールド変数で覚えておいたディレクトリと Path.Combine でつなげて、File.Move を使えば良い。
引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/


- Child Tree -