use more recently available phrase_[to|from]_file/3 in example
This commit is contained in:
@@ -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).
|
|
||||||
|
|||||||
Reference in New Issue
Block a user