use more recently available phrase_[to|from]_file/3 in example

This commit is contained in:
Markus Triska
2025-11-23 09:42:14 +01:00
parent e4d9692535
commit b66824ffce

View File

@@ -1,5 +1,7 @@
:- use_module(library(charsio)). :- use_module(library(charsio)).
:- use_module(library(lists)). :- use_module(library(lists)).
:- use_module(library(pio)).
:- use_module(library(dcgs)).
:- initialization(unit_test). :- initialization(unit_test).
@@ -10,22 +12,12 @@ unit_test :-
Cs = "a£\x2124\". Cs = "a£\x2124\".
write_f :- write_f :-
open('x.txt', write, Stream, [type(binary)]),
F = put_byte(Stream),
chars_utf8bytes("£\x2124\\x2764\\x1F496\\n", Bs), chars_utf8bytes("£\x2124\\x2764\\x1F496\\n", Bs),
maplist(F, Bs), maplist(char_code, Cs, Bs),
close(Stream). phrase_to_file(Cs, "x.txt", [type(binary)]).
get_bytes(Stream, Res) :- get_bytes(Stream, [], Res).
get_bytes(Stream, Acc, Res) :-
get_byte(Stream, B),
(B =:= -1 ->
reverse(Acc, Res)
; get_bytes(Stream, [B|Acc], Res)).
read_f :- read_f :-
open('x.txt', read, Stream, [type(binary)]), phrase_from_file(seq(Cs), "x.txt", [type(binary)]),
get_bytes(Stream, Bs), maplist(char_code, Cs, Bs),
chars_utf8bytes(Cs, Bs), chars_utf8bytes(Chars, Bs),
write(Cs), write(Chars).
close(Stream).