掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
テキストにパスを書くには? (ID:114160)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Shell "cmd.exe /c dir /B /S C:\tmp > C:\tmplist.txt" の関数でC:\tmpの入力欄にC:\Documents and Settings\tmpと変えたら tmplisu.txtが空白になっていました。 やっぱりだめかと思い コマンドプロンプトの規則上パスに空白が入った場合ダブルクォーテーションで囲むというのがありましたから、試して見た所 Shell "cmd.exe /c dir /B /S C:\"Documents and Settings"\tmp > C:\tmplist.txt"としたらプログラムで使う所のShellの次に書いてあるダブルクォーテーションと重なってしまいエラーが発生します。 どうすればいいか教えてください。 お願いします。 あと、私の苦労して作ったソースでとりあえず完成しました。(条件がきび過ぎますけど・・・) <名前空間にこれを記載してください。> Imports System.IO [FolderBrowserDialog1とSaveFileDialog1を追加してください。] Private path() As String Private kakunin As String Private foruda() As String Private sasa As String Dim i As Integer Dim s As Integer Dim nagasa As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'FolderBrowserDialog1を表示 With FolderBrowserDialog1 .SelectedPath = "" .ShowDialog() 'ダイレクトリーの確認 ある場合はTrueを返す。 kakunin = System.IO.Directory.Exists(.SelectedPath) If kakunin = "True" Then 'ダイレクトリーの名前を配列に格納 foruda = System.IO.Directory.GetDirectories(.SelectedPath) Else 'Falseだった場合の対処法 MessageBox.Show("最下層フォルダが存在しません。", "メッセージ") End If For i = 0 To UBound(foruda) '上の配列で格納した値を使いフォルダー一つ一つに入っているファイルを確認 sasa = System.IO.File.Exists(foruda(i)) If sasa = "False" Then '配列pathにファイルを格納 path = System.IO.Directory.GetFiles(foruda(i)) For s = 0 To UBound(path) '格納したファイルパスをテキストに表示して、改行する。 '作業場所 パス編集はここで nagasa = path(s).IndexOf("デスクトップ") path(s) = path(s).Substring(nagasa + 7) TextBox1.Text = TextBox1.Text + path(s) + vbCrLf Next End If Next End With With SaveFileDialog1 .FileName = "" .Filter = "m3uの再生リスト|*.m3u" .ShowDialog() Dim hozon As System.IO.StreamWriter = _ System.IO.File.CreateText(.FileName) hozon.WriteLine(TextBox1.Text) hozon.Close() End With End Sub とこんな感じで・・・ そこで頼みがあります。 今のこのソースでは入力パスがデスクトップを通過してないと動作しない ↑は結果的にこれでいいです。(知っててわざとやっていますから・・・) しかし、デレクトリー→デレクトリー→ファイルという並び方しか対応していません。 この対応に限らす指定したフォルダ内にあるファイルをテキストファイルに書き込むにはどうすればいいでしょうか?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.