Я хочу проверить, присутствует ли определенная строка во внешнем файле, прочитав файл построчно с помощью erlang. Если конкретная строка отсутствует, я хочу добавить файл со строкой. До сих пор мне удалось открыть файл и прочитать содержимое файла построчно. но я понятия не имею, как поступить с остальными. Я новичок в erlang, поэтому любая помощь в этом вопросе будет высоко оценена.
Что я уже пробовал:
-module(helloworld).
-export([readlines/1,get_all_lines/1,start/0]).
readlines(FileName) ->
{ok, Device} = file:open(FileName, [read]),
try get_all_lines(Device)
after file:close(Device)
end.
get_all_lines(Device) ->
case io:get_line(Device, "") of
eof -> [];
Line -> Line ++ get_all_lines(Device)
end.
start() ->
readlines("D:\\documents\\file.txt"),
Txt=file:read_file("D:\\documents\\file.txt"),
io:fwrite("~p~n", [Txt]).
Что я получил в результате:
привет мир:старт(). {хорошо,‹‹привет\r\nпривет››} хорошо
Пример файла, который я использую: имя файла:file.txt
содержимое файла: привет привет