私はRubyの世界では初めてです。ルビーのすべてのファイルの内容を反復して印刷する
私の課題の1つは、フォルダ内のすべてのテキストファイルの内容(トップレベルのみ)を読み込み、ファイルの内容を1つの出力ファイルに追加またはマージしてリダイレクトする方法です。
私は以下のような形式を期待している:
出力ファイル
File Name: 1st file name
all its contents
====================================
File Name: 2nd file name
all its contents
====================================
File Name: 3rd file name
all its contents
====================================
....
....
====================================
私は以下のスクリプトを記述するために管理しますが、出力ファイルは空です。どんな提案もお願いします。
File.open('C:\Users\darkop\Desktop\final_output.txt','a') do |final|
@files = Dir.glob("D:\text\*.txt")
for file in @files
text = File.open(file, 'r').read.sub(/#$/?\z/, $/)
text.each_line do |line|
puts "File Name:"#{file}
puts
final << line
puts "=" * 20
end
end
end
また、前述の形式の出力をテキストファイルではなくワードドキュメントにリダイレクトすることはできますか?
多くのありがとうございます。
「試行」と「予想される出力」を質問に含めました。あなたはまた、あなたが得ている "あなたの出力"または "エラー"を追加する必要があります。 –
@JagdeepSingh:空白の出力ファイルが出てきます。 Thnks。 – Goku