From c79727e6e2f717e44d2b8d5a60825db8ed6e5d66 Mon Sep 17 00:00:00 2001
From: ulrich
Date: Mon, 18 Jan 2021 17:16:28 +0000
Subject: [PATCH] Encoding bei POST

---
 src/java/de/uhilger/filecms/api/FileMgr.java |   19 +++++++++++++++----
 1 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/src/java/de/uhilger/filecms/api/FileMgr.java b/src/java/de/uhilger/filecms/api/FileMgr.java
index f2bf1cc..3d6844f 100644
--- a/src/java/de/uhilger/filecms/api/FileMgr.java
+++ b/src/java/de/uhilger/filecms/api/FileMgr.java
@@ -37,7 +37,15 @@
 import java.io.FileWriter;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
 import java.io.Reader;
+import java.io.UnsupportedEncodingException;
+import java.io.Writer;
+import java.net.URLDecoder;
+import java.net.URLEncoder;
+import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.security.Principal;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -57,6 +65,7 @@
 import net.coobird.thumbnailator.Thumbnails;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.filefilter.WildcardFileFilter;
+import org.apache.commons.lang.StringEscapeUtils;
 
 /**
  * Methoden zur Verwaltung von Dateien
@@ -194,8 +203,8 @@
         try {
           File targetFile = new File(getTargetDir(relPath), fileName);
 
-          //reader = new InputStreamReader(new FileInputStream(targetFile), "UTF8");
-          reader = new FileReader(targetFile);
+          reader = new InputStreamReader(new FileInputStream(targetFile), Charset.forName("UTF-8").newDecoder());
+          //reader = new FileReader(targetFile);
           StringBuffer buf = new StringBuffer();
           char[] readBuffer = new char[1024];
           int charsRead = reader.read(readBuffer);
@@ -437,9 +446,11 @@
     FileRef savedFile = null;
     try {
       targetFile.createNewFile();
-      FileWriter w = new FileWriter(targetFile);
+      //FileWriter w = new FileWriter(targetFile, Charset.forName("UTF-8"));
       //w.write(StringEscapeUtils.unescapeHtml(contents));
-      w.write(contents);
+      Writer w = new OutputStreamWriter(new FileOutputStream(targetFile), "UTF-8");
+      //w.write(contents);
+      w.write(StringEscapeUtils.unescapeHtml(contents));
       w.flush();
       w.close();
       savedFile = new FileRef(

--
Gitblit v1.9.3