From cc27626d016f8e13cfc86291ae9ddfc1a6e9d09a Mon Sep 17 00:00:00 2001 From: René 'Necoro' Neumann Date: Sun, 23 Jan 2022 23:52:53 +0100 Subject: Factor out `encodedWriter` --- encoding.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'encoding.go') diff --git a/encoding.go b/encoding.go index d77cd65..b7511c5 100644 --- a/encoding.go +++ b/encoding.go @@ -5,12 +5,13 @@ import ( "io" "github.com/gogs/chardet" + "golang.org/x/text/encoding/charmap" "golang.org/x/text/encoding/ianaindex" ) -// getEncodedReader tries to determine the encoding of the content of `r`. +// encodedReader tries to determine the encoding of the content of `r`. // It returns a new reader that returns UTF-8 content. -func getEncodedReader(r io.Reader) (io.Reader, error) { +func encodedReader(r io.Reader) (io.Reader, error) { buf := make([]byte, 128) n, err := io.ReadFull(r, buf) @@ -38,3 +39,8 @@ func getEncodedReader(r io.Reader) (io.Reader, error) { return enc.NewDecoder().Reader(r), nil } + +// encodedWriter returns a wrapper around the passed in writer that encodes into the expected charset. +func encodedWriter(w io.Writer) io.Writer { + return charmap.ISO8859_1.NewEncoder().Writer(w) +} -- cgit v1.2.3-54-g00ecf