From fbc5423a99c8a789772ed182ba381d7777527f93 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Mon, 14 Feb 2022 21:03:18 +0000 Subject: [PATCH] fhem.pl: unicodeEncoding in FileRead/FileWrite (Forum #126088) git-svn-id: https://svn.fhem.de/fhem/trunk@25680 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/fhem.pl | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/fhem/fhem.pl b/fhem/fhem.pl index 05539057d..4b6ce24c6 100755 --- a/fhem/fhem.pl +++ b/fhem/fhem.pl @@ -5679,13 +5679,16 @@ FileRead($) ($err, @ret) = cfgDB_FileRead($fileName); } else { - if(open(FH, $fileName)) { - @ret = ; - close(FH); + my $FH; + if(open($FH, $fileName)) { + binmode($FH, ":encoding(UTF-8)") if($unicodeEncoding); + @ret = <$FH>; + close($FH); chomp(@ret); } else { $err = "Can't open $fileName: $!"; } + } return ($err, @ret); @@ -5711,12 +5714,14 @@ FileWrite($@) return cfgDB_FileWrite($fileName, @rows); } else { - if(open(FH, ">$fileName")) { - binmode (FH); + my $FH; + if(open($FH, ">$fileName")) { + binmode($FH); + binmode($FH, ":encoding(UTF-8)") if($unicodeEncoding); foreach my $l (@rows) { - print FH $l,$nl; + print $FH $l,$nl; } - close(FH); + close($FH); return undef; } else {