1
我剛剛開始使用Ruby,我的第一個程序從txt文件讀取並將每行的修改版本打印到另一個。這樣做是爲了得到這樣的:使用Ruby讀取和修改文件中的行
- Book Title *Book Author*
要這樣:
Book Title Book Author
我的代碼如下所示:
listold = File.open('listas.txt', 'r+')
listnew = File.new('lista.txt', 'w+')
listold.each_line {|line|
nome, autor = line.split(' *')
nome['- '] = ' '
autor = autor.chomp('*')
listnew.puts nome << "\t" << autor
}
我遇到的問題是它僅適用於過去的在一個文件中行。對於其他人來說,\t
間距非常小,而最後的*不會被削減。有誰能夠幫助我?
它只適用於當我改變拆分,如你所建議的。不過,我不明白爲什麼。謝謝! – 2012-07-15 21:59:16
奇怪..我懷疑charset或類似的問題。換行符是CR,CR/LF還是LF?我在Linux上。 – Satya 2012-07-15 22:03:23
我猜LF,因爲我在Mac上。 – 2012-07-15 22:06:46