From 2de8809eadefce40f6ff61ecd261dd224eda8c1b Mon Sep 17 00:00:00 2001 From: bol-van Date: Tue, 6 Jan 2026 17:07:08 +0300 Subject: [PATCH] zapret-lib: writefile --- lua/zapret-lib.lua | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/lua/zapret-lib.lua b/lua/zapret-lib.lua index eb621ec..5392e5e 100644 --- a/lua/zapret-lib.lua +++ b/lua/zapret-lib.lua @@ -1502,6 +1502,32 @@ function gzip_file(filename, data, level, memlevel, compress_block_size) f:close() gzip_end(gz) end +-- reads the whole file +function readfile(filename) + local f, err = io.open(filename, "r") + if not f then + error("readfile: "..err) + end + local s,err = f:read("*a") + f:close() + if err then + error("readfile: "..err) + end + return s +end +-- reads plain or gzipped file with transparent decompression +function z_readfile(filename) + return is_gzip_file(filename) and gunzip_file(filename) or readfile(filename) +end +-- write data to filename +function writefile(filename, data) + local f, err = io.open(filename, "w") + if not f then + error("writefile: "..err) + end + local s,err = f:write(data) + f:close() +end -- DISSECTORS