0

長年の潜伏者、初投稿!私はRubyが初めてなので、これについて何か助けていただければ幸いです。

ブレークで区切られたファイルのリストを含む大きなテキスト ファイルがあるので、次のようになります。

ARO_9501.jpg
ARO_9506.jpg
IMG_1499.jpg
IMG_1511.jpg

このテキスト ファイルを配列に取得して、.each を呼び出してファイルを別のディレクトリにコピーするにはどうすればよいですか?

4

2 に答える 2

0

を使用してこのように行くこともできますIO::readlines

ar = File.open("/home/kirti/ruby/foo.txt","r") do |fil|
    fil.readlines.map(&:strip)
end
p ar
# >> ["ARO_9501.jpg", "ARO_9506.jpg", "IMG_1499.jpg", "IMG_1511.jpg"]

@steenslag のコメントによると:

ar = File.readlines("/home/kirti/ruby/foo.txt").map(&:chomp)
ar # => [ "ARO_9501.jpg", "ARO_9506.jpg", "IMG_1499.jpg", "IMG_1511.jpg"]
于 2013-09-25T20:47:25.790 に答える
0

これは私が一般的に行う方法です:

fileNameArray = File.read("/path/to/file.txt").split("\n")

または、ファイル名を繰り返し処理する必要があり、名前を含む配列が必ずしも必要でない場合 (必要ないように見えます)、通常は次のように使用します。

File.read("/path/to/file.txt").each_line do |line|
  # do operations using line
end

ドキュメント:
IO::read( Fileextends IO)および
String .split()each_line()

于 2013-09-25T20:52:18.590 に答える