長年の潜伏者、初投稿!私はRubyが初めてなので、これについて何か助けていただければ幸いです。
ブレークで区切られたファイルのリストを含む大きなテキスト ファイルがあるので、次のようになります。
ARO_9501.jpg
ARO_9506.jpg
IMG_1499.jpg
IMG_1511.jpg
このテキスト ファイルを配列に取得して、.each を呼び出してファイルを別のディレクトリにコピーするにはどうすればよいですか?
を使用してこのように行くこともできます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"]
これは私が一般的に行う方法です:
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
( File
extends IO
)および
String
.split()
each_line()