A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
でも書きましたけど、マニュアル読みましょうよ。
熟練者だって、細かい点を確認するためにマニュアルを読みます。
それを初心者がサボってどうするんですか。
http://docs.ruby-lang.org/ja/2.1.0/class/Dir.htm …
にちゃんと
> パターンにマッチするファイル名を文字列の配列として返します。
と書いてあります。
「配列の中身を順番に処理する」って基本中の基本なわけですから、初心者用の入門書を読めばちゃんと書いてあります。
また
> ブロックが与えられたときはワイルドカードにマッチしたファイルを 引数にそのブロックを 1 つずつ評価して nil を返します
とも書いてあります。
Dir.glob("b*") {|f| p f }
というサンプルコードもちゃんと載っています。
ブロックを与える方法というのも、Rubyの基本ですから、ちゃんと初心者用の入門書にも書いてあります。
前の質問の中で、あなた自身が利用しています。
f.each_line do |line| ~ end というように。
No.2
- 回答日時:
>例えばFile.open(sample)などのメソッドの引数にDir.globの結果を渡したい場合はどうすればよいのでしょうか?
#1の回答の例であれば、以下のようになります。
カレントディレクトリ下のファイル一覧を取得して、そのファイルをオープンする
files = Dir.glob("*")
files.each do |file|
File.open(file)
・・・・・以下、省略
end
Dir.globの結果として、filesが取得できます。
これは、カレントディレクトリ下のファイル名(あるいはディレクトリ名)の配列になっています。
この配列の内容を1個づつ処理する場合は、each メソッドを使います。
files.each do |file|
# file が1個のファイル名(あるいはディレクトリ名)をあらわしています。
end
尚、files と file の名前はなんでもよいです。
xxx = Dir.glob("*")
xxx.each do |x|
File.open(x)
end
でも同じ結果になります。
余談ですが、上記の例の場合、ディレクトリ名も取得する場合もありえます。
もし、あなたの環境でDir.globを実行したときに、全てファイル名だけであれば、問題ありませんが、
ディレクトリも含まれる場合は、そのディレクトリをスキップする必要があります。
その場合は、再度質問してください。
No.1
- 回答日時:
サンプルです。
カレントディレクトリ下のファイル一覧を取得して、表示します。
files = Dir.glob("*")
files.each do |file|
print file,"\n"
end
不明点があれば、補足してください。
この回答への補足
回答ありがとうございます。
もう一つお聞きしたい事があるのですが、
回答者様のサンプルではprintの引数にDir.globの結果を当てはめていらっしゃいますが、
例えばFile.open(sample)などのメソッドの引数にDir.globの結果を渡したい場合はどうすればよいのでしょうか?
たびたびの質問すみません。ご回答の程よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux 実行の仕方及び実行結果が分かりません。 2 2022/11/17 19:31
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 17:49
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Visual Basic(VBA) VBA GetAttrについて教えてください 2 2022/12/22 15:25
- Visual Basic(VBA) 【VBA】印刷マクロのループ処理が反映されません 3 2022/08/09 02:15
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- その他(プログラミング・Web制作) どういうプログラムで組みますか?google colabでやってるんですけど、出来る方お願いします。 1 2022/07/17 18:41
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
pythonのエラーについて
-
【fortran77】空行を含む数値デ...
-
バッチ処理 特定の文字以降を...
-
【ExcelVBA】300万件越えCSVか...
-
VBA csvファイルのデータを...
-
ダブルコーテーション付きでCSV...
-
[コンパイルエラー 修飾子が不...
-
VBAで複数のCSVからレコードセ...
-
エクセルVBA Application.GetSa...
-
CSVデータの文字列置換
-
VBAでcsvファイルもシートもあ...
-
vbaマクロについて 次のような...
-
pythonでリストをCSVに出力する...
-
fortranでデータの抜き出しをし...
-
バッチコマンドで指定行を抽出...
-
Excelマクロ 空白セルを無視し...
-
CSVで余計な空行が入る
-
verilog HDLについての質問です...
-
SQLファイルの読み込み
-
pythonまたはrubyでの複数ファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
fortranでNAのあるデータを読み...
-
Fortran:列数の分からないデー...
-
pythonのエラーについて
-
【ruby】flockで掛けたロックを...
-
pycharmへのpysamインストール...
-
【fortran77】空行を含む数値デ...
-
rubyの見えない文字
-
rubyプログラムでのフォルダ内...
-
2行読み込んで一行戻り、また2...
-
ギャスケット作成。修正の解説...
-
バッチ処理 特定の文字以降を...
-
Excelマクロ 空白セルを無視し...
-
【ExcelVBA】300万件越えCSVか...
-
VBAでcsvファイルもシートもあ...
-
ダブルコーテーション付きでCSV...
-
[コンパイルエラー 修飾子が不...
-
VBA テキストボックスを選択状...
-
Access VBA エラー2448について
-
INPUTタグ disabledの文字色を...
-
EXCEL→CSV保存時のダブルクォー...
おすすめ情報