Ruby - напишите в искомой позиции - PullRequest
0 голосов
/ 07 февраля 2012

Цель состоит в том, чтобы заменить «пока» на «Привет»

# START: file.txt contains string "byebye World!"
fd = File.open('file.txt', 'a')

fd.seek(0, IO::SEEK_SET)
fd.puts 'Hello '
fd.close
# END: file.txt contains two lines "byebye World " and "Hello "

Я понимаю, что существуют другие превосходные (и работают :)) способы достижения этого, но почему этот код не пишет в правильном положении?

1 Ответ

1 голос
/ 07 февраля 2012

Я думаю, что вы неправильно понимаете w +, вы можете захотеть использовать r + в качестве скромной строки, вот что делает w +.

w+
Read-write, truncates existing file to zero length or creates a new file for reading and writing.

усечение существующего файла до нуля приводит к потере вашей строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...