Index: trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java	(revision 7082)
@@ -13,4 +13,5 @@
 import java.io.IOException;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -39,5 +40,4 @@
 import org.openstreetmap.josm.tools.MultiMap;
 import org.openstreetmap.josm.tools.Shortcut;
-import org.openstreetmap.josm.tools.Utils;
 import org.xml.sax.SAXException;
 
@@ -292,5 +292,5 @@
 
                 for (File urlFile: urlFiles) {
-                    try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(urlFile), Utils.UTF_8))) {
+                    try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(urlFile), StandardCharsets.UTF_8))) {
                         String line;
                         while ((line = reader.readLine()) != null) {
Index: trunk/src/org/openstreetmap/josm/data/AutosaveTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/AutosaveTask.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/AutosaveTask.java	(revision 7082)
@@ -12,4 +12,5 @@
 import java.io.PrintStream;
 import java.lang.management.ManagementFactory;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Date;
@@ -40,5 +41,4 @@
 import org.openstreetmap.josm.io.OsmExporter;
 import org.openstreetmap.josm.io.OsmImporter;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -303,5 +303,5 @@
                 File pidFile = getPidFile(file);
                 if (pidFile.exists()) {
-                    try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(pidFile), Utils.UTF_8))) {
+                    try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(pidFile), StandardCharsets.UTF_8))) {
                         String jvmId = reader.readLine();
                         if (jvmId != null) {
Index: trunk/src/org/openstreetmap/josm/data/CustomConfigurator.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/CustomConfigurator.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/CustomConfigurator.java	(revision 7082)
@@ -11,4 +11,5 @@
 import java.io.FileInputStream;
 import java.io.InputStream;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -236,5 +237,5 @@
         try {
             String toXML = Main.pref.toXML(true);
-            InputStream is = new ByteArrayInputStream(toXML.getBytes(Utils.UTF_8));
+            InputStream is = new ByteArrayInputStream(toXML.getBytes(StandardCharsets.UTF_8));
             DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
             builderFactory.setValidating(false);
Index: trunk/src/org/openstreetmap/josm/data/Preferences.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/Preferences.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/Preferences.java	(revision 7082)
@@ -19,4 +19,5 @@
 import java.lang.annotation.RetentionPolicy;
 import java.lang.reflect.Field;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -737,5 +738,5 @@
 
         try (PrintWriter out = new PrintWriter(new OutputStreamWriter(
-                new FileOutputStream(prefFile + "_tmp"), Utils.UTF_8), false)) {
+                new FileOutputStream(prefFile + "_tmp"), StandardCharsets.UTF_8), false)) {
             out.print(toXML(false));
         }
@@ -760,8 +761,8 @@
         settingsMap.clear();
         File pref = getPreferenceFile();
-        try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(pref), Utils.UTF_8))) {
+        try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(pref), StandardCharsets.UTF_8))) {
             validateXML(in);
         }
-        try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(pref), Utils.UTF_8))) {
+        try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(pref), StandardCharsets.UTF_8))) {
             fromXML(in);
         }
Index: trunk/src/org/openstreetmap/josm/data/projection/Projections.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/Projections.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/projection/Projections.java	(revision 7082)
@@ -6,4 +6,5 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Collections;
@@ -33,5 +34,4 @@
 import org.openstreetmap.josm.io.MirroredInputStream;
 import org.openstreetmap.josm.tools.Pair;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -134,5 +134,5 @@
         try (
             InputStream in = new MirroredInputStream("resource://data/projection/epsg");
-            BufferedReader r = new BufferedReader(new InputStreamReader(in, Utils.UTF_8));
+            BufferedReader r = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8));
         ) {
             String line, lastline = "";
Index: trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFile.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFile.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFile.java	(revision 7082)
@@ -23,9 +23,8 @@
 import java.io.InputStream;
 import java.io.Serializable;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
-
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -104,5 +103,5 @@
         topLevelSubGrid = null;
         in.read(b8);
-        String overviewHeaderCountId = new String(b8, Utils.UTF_8);
+        String overviewHeaderCountId = new String(b8, StandardCharsets.UTF_8);
         if (!"NUM_OREC".equals(overviewHeaderCountId))
             throw new IllegalArgumentException("Input file is not an NTv2 grid shift file");
@@ -127,5 +126,5 @@
         in.read(b8);
         in.read(b8);
-        shiftType = new String(b8, Utils.UTF_8);
+        shiftType = new String(b8, StandardCharsets.UTF_8);
         in.read(b8);
         in.read(b8);
Index: trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2SubGrid.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2SubGrid.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2SubGrid.java	(revision 7082)
@@ -23,4 +23,5 @@
 import java.io.InputStream;
 import java.io.Serializable;
+import java.nio.charset.StandardCharsets;
 
 import org.openstreetmap.josm.Main;
@@ -75,14 +76,14 @@
         in.read(b8);
         in.read(b8);
-        subGridName = new String(b8, Utils.UTF_8).trim();
-        in.read(b8);
-        in.read(b8);
-        parentSubGridName = new String(b8, Utils.UTF_8).trim();
-        in.read(b8);
-        in.read(b8);
-        created = new String(b8, Utils.UTF_8);
-        in.read(b8);
-        in.read(b8);
-        updated = new String(b8, Utils.UTF_8);
+        subGridName = new String(b8, StandardCharsets.UTF_8).trim();
+        in.read(b8);
+        in.read(b8);
+        parentSubGridName = new String(b8, StandardCharsets.UTF_8).trim();
+        in.read(b8);
+        in.read(b8);
+        created = new String(b8, StandardCharsets.UTF_8);
+        in.read(b8);
+        in.read(b8);
+        updated = new String(b8, StandardCharsets.UTF_8);
         in.read(b8);
         in.read(b8);
Index: trunk/src/org/openstreetmap/josm/data/validation/OsmValidator.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/OsmValidator.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/validation/OsmValidator.java	(revision 7082)
@@ -13,4 +13,5 @@
 import java.io.OutputStreamWriter;
 import java.io.PrintWriter;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -171,5 +172,5 @@
             File file = new File(getValidatorDir() + "ignorederrors");
             if (file.exists()) {
-                try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file), Utils.UTF_8))) {
+                try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file), StandardCharsets.UTF_8))) {
                     for (String line = in.readLine(); line != null; line = in.readLine()) {
                         ignoredErrors.add(line);
@@ -194,5 +195,5 @@
     public static void saveIgnoredErrors() {
         try (PrintWriter out = new PrintWriter(new OutputStreamWriter(
-                new FileOutputStream(getValidatorDir() + "ignorederrors"), Utils.UTF_8), false)) {
+                new FileOutputStream(getValidatorDir() + "ignorederrors"), StandardCharsets.UTF_8), false)) {
             for (String e : ignoredErrors) {
                 out.println(e);
Index: trunk/src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java	(revision 7082)
@@ -6,4 +6,5 @@
 import java.io.InputStreamReader;
 import java.io.Reader;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -24,5 +25,4 @@
 import org.openstreetmap.josm.data.validation.TestError;
 import org.openstreetmap.josm.io.MirroredInputStream;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -53,5 +53,5 @@
         if (ENGINE != null) {
             try (Reader reader = new InputStreamReader(
-                    new MirroredInputStream("resource://data/validator/opening_hours.js"), Utils.UTF_8)) {
+                    new MirroredInputStream("resource://data/validator/opening_hours.js"), StandardCharsets.UTF_8)) {
                 ENGINE.eval(reader);
                 // fake country/state to not get errors on holidays
@@ -218,5 +218,5 @@
         return errors;
     }
-    
+
     /**
      * Translates and shortens the error/warning message.
Index: trunk/src/org/openstreetmap/josm/gui/GettingStarted.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/GettingStarted.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/GettingStarted.java	(revision 7082)
@@ -12,4 +12,5 @@
 import java.io.IOException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -31,5 +32,4 @@
 import org.openstreetmap.josm.tools.LanguageInfo;
 import org.openstreetmap.josm.tools.OpenBrowser;
-import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.WikiReader;
 
@@ -92,5 +92,5 @@
             Main.pref.put("cache.motd.html.java", myJava);
             Main.pref.put("cache.motd.html.lang", myLang);
-            return motd.getBytes(Utils.UTF_8);
+            return motd.getBytes(StandardCharsets.UTF_8);
         }
 
Index: trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/NavigatableComponent.java	(revision 7082)
@@ -9,4 +9,5 @@
 import java.awt.geom.AffineTransform;
 import java.awt.geom.Point2D;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -1328,5 +1329,5 @@
                 getWidth() + "_" + getHeight() + "_" + getProjection().toString();
         CRC32 id = new CRC32();
-        id.update(x.getBytes(Utils.UTF_8));
+        id.update(x.getBytes(StandardCharsets.UTF_8));
         return (int)id.getValue();
     }
@@ -1370,5 +1371,5 @@
 
     private LinkedList<CursorInfo> cursors = new LinkedList<>();
-    
+
     /**
      * Set new cursor.
@@ -1384,9 +1385,9 @@
         setCursor(cursor);
     }
-    
+
     public void setNewCursor(int cursor, Object reference) {
         setNewCursor(Cursor.getPredefinedCursor(cursor), reference);
     }
-    
+
     /**
      * Remove the new cursor and reset to previous
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 7082)
@@ -25,4 +25,5 @@
 import java.io.InputStreamReader;
 import java.io.OutputStream;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -655,5 +656,5 @@
             try {
                 InputStream is = s.getSourceInputStream();
-                try (BufferedReader reader = new BufferedReader(new InputStreamReader(is, Utils.UTF_8))) {
+                try (BufferedReader reader = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8))) {
                     String line;
                     while ((line = reader.readLine()) != null) {
Index: trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java	(revision 7082)
@@ -18,4 +18,5 @@
 import java.net.HttpURLConnection;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.text.DecimalFormat;
 import java.util.ArrayList;
@@ -371,5 +372,5 @@
                 try (
                     InputStream inputStream = connection.getInputStream();
-                    Reader reader = new InputStreamReader(inputStream, Utils.UTF_8);
+                    Reader reader = new InputStreamReader(inputStream, StandardCharsets.UTF_8);
                 ) {
                     InputSource inputSource = new InputSource(reader);
Index: trunk/src/org/openstreetmap/josm/gui/help/HelpBrowser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/help/HelpBrowser.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/help/HelpBrowser.java	(revision 7082)
@@ -16,4 +16,5 @@
 import java.io.InputStreamReader;
 import java.io.StringReader;
+import java.nio.charset.StandardCharsets;
 import java.util.Locale;
 import java.util.Observable;
@@ -52,5 +53,4 @@
 import org.openstreetmap.josm.tools.LanguageInfo.LocaleType;
 import org.openstreetmap.josm.tools.OpenBrowser;
-import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.WindowGeometry;
 
@@ -138,5 +138,5 @@
         try (BufferedReader reader = new BufferedReader(
                 new InputStreamReader(
-                        getClass().getResourceAsStream("/data/help-browser.css"), Utils.UTF_8
+                        getClass().getResourceAsStream("/data/help-browser.css"), StandardCharsets.UTF_8
                 )
         )) {
Index: trunk/src/org/openstreetmap/josm/gui/help/HelpContentReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/help/HelpContentReader.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/help/HelpContentReader.java	(revision 7082)
@@ -8,4 +8,5 @@
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 
 import org.openstreetmap.josm.tools.Utils;
@@ -49,5 +50,5 @@
             con = Utils.openHttpConnection(u);
             con.connect();
-            try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream(), Utils.UTF_8))) {
+            try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream(), StandardCharsets.UTF_8))) {
                 return prepareHelpContent(in, dotest, u);
             }
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/MapPaintStyles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/MapPaintStyles.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/MapPaintStyles.java	(revision 7082)
@@ -7,4 +7,5 @@
 import java.io.IOException;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -235,5 +236,5 @@
                 return new XmlStyleSource(entry);
             else {
-                try (InputStreamReader reader = new InputStreamReader(in, Utils.UTF_8)) {
+                try (InputStreamReader reader = new InputStreamReader(in, StandardCharsets.UTF_8)) {
                     WHILE: while (true) {
                         int c = reader.read();
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java	(revision 7082)
@@ -14,4 +14,5 @@
 import java.lang.reflect.Method;
 import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -579,5 +580,5 @@
         public static long CRC32_checksum(String s) {
             CRC32 cs = new CRC32();
-            cs.update(s.getBytes(Utils.UTF_8));
+            cs.update(s.getBytes(StandardCharsets.UTF_8));
             return cs.getValue();
         }
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSource.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSource.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSource.java	(revision 7082)
@@ -9,4 +9,5 @@
 import java.io.IOException;
 import java.io.InputStream;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.List;
@@ -53,5 +54,5 @@
     public final List<MapCSSRule> multipolygonRules = new ArrayList<>();
     public final List<MapCSSRule> canvasRules = new ArrayList<>();
-    
+
     private Color backgroundColorOverride;
     private String css = null;
@@ -93,10 +94,10 @@
                 MapCSSParser preprocessor = new MapCSSParser(in, "UTF-8", MapCSSParser.LexicalState.PREPROCESSOR);
                 String mapcss = preprocessor.pp_root(this);
-                
+
                 // do the actual mapcss parsing
-                InputStream in2 = new ByteArrayInputStream(mapcss.getBytes(Utils.UTF_8));
+                InputStream in2 = new ByteArrayInputStream(mapcss.getBytes(StandardCharsets.UTF_8));
                 MapCSSParser parser = new MapCSSParser(in2, "UTF-8", MapCSSParser.LexicalState.DEFAULT);
                 parser.sheet(this);
-                
+
                 loadMeta();
                 loadCanvas();
@@ -155,5 +156,5 @@
     public InputStream getSourceInputStream() throws IOException {
         if (css != null) {
-            return new ByteArrayInputStream(css.getBytes(Utils.UTF_8));
+            return new ByteArrayInputStream(css.getBytes(StandardCharsets.UTF_8));
         }
         MirroredInputStream in = getMirroredInputStream();
@@ -250,9 +251,9 @@
             }
         }
-        
+
         // the declaration indices are sorted, so it suffices to save the
         // last used index
         int lastDeclUsed = -1;
-        
+
         for (MapCSSRule r : matchingRules) {
             env.clearSelectorMatchingInformation();
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/xml/XmlStyleSource.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/xml/XmlStyleSource.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/xml/XmlStyleSource.java	(revision 7082)
@@ -7,4 +7,5 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Collections;
@@ -77,5 +78,5 @@
             try (
                 InputStream in = getSourceInputStream();
-                InputStreamReader reader = new InputStreamReader(in, Utils.UTF_8)
+                InputStreamReader reader = new InputStreamReader(in, StandardCharsets.UTF_8)
             ) {
                 XmlObjectParser parser = new XmlObjectParser(new XmlStyleSourceHandler(this));
Index: trunk/src/org/openstreetmap/josm/gui/oauth/OsmOAuthAuthorizationClient.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/oauth/OsmOAuthAuthorizationClient.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/oauth/OsmOAuthAuthorizationClient.java	(revision 7082)
@@ -15,4 +15,5 @@
 import java.net.URL;
 import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -200,5 +201,5 @@
         try (
             InputStream is = connection.getInputStream();
-            BufferedReader r = new BufferedReader(new InputStreamReader(is, Utils.UTF_8))
+            BufferedReader r = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8))
         ) {
             String c;
Index: trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java	(revision 7082)
@@ -26,4 +26,5 @@
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -124,5 +125,5 @@
         this.sourceType = sourceType;
         this.canEnable = sourceType.equals(SourceType.MAP_PAINT_STYLE) || sourceType.equals(SourceType.TAGCHECKER_RULE);
-        
+
         DefaultListSelectionModel selectionModel = new DefaultListSelectionModel();
         this.availableSourcesModel = new AvailableSourcesListModel(selectionModel);
@@ -718,5 +719,5 @@
             fileChooser.setMargin(new Insets(0, 0, 0, 0));
             p.add(fileChooser, GBC.eol().insets(0, 0, 5, 5));
-            
+
             if (e != null) {
                 if (e.title != null) {
@@ -1212,5 +1213,5 @@
     static class SourceEntryListCellRenderer extends JLabel implements ListCellRenderer<ExtendedSourceEntry> {
         @Override
-        public Component getListCellRendererComponent(JList<? extends ExtendedSourceEntry> list, ExtendedSourceEntry value, 
+        public Component getListCellRendererComponent(JList<? extends ExtendedSourceEntry> list, ExtendedSourceEntry value,
                 int index, boolean isSelected, boolean cellHasFocus) {
             String s = value.toString();
@@ -1280,5 +1281,5 @@
 
                 MirroredInputStream stream = new MirroredInputStream(url);
-                reader = new BufferedReader(new InputStreamReader(stream, Utils.UTF_8));
+                reader = new BufferedReader(new InputStreamReader(stream, StandardCharsets.UTF_8));
 
                 String line;
@@ -1605,5 +1606,5 @@
         }
     }
-    
+
     /**
      * Defers loading of sources to the first time the adequate tab is selected.
Index: trunk/src/org/openstreetmap/josm/gui/preferences/server/ApiUrlTestTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/server/ApiUrlTestTask.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/server/ApiUrlTestTask.java	(revision 7082)
@@ -11,4 +11,5 @@
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 
 import javax.swing.JOptionPane;
@@ -194,5 +195,5 @@
             }
             StringBuilder changesets = new StringBuilder();
-            try (BufferedReader bin = new BufferedReader(new InputStreamReader(connection.getInputStream(), Utils.UTF_8))) {
+            try (BufferedReader bin = new BufferedReader(new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) {
                 String line;
                 while ((line = bin.readLine()) != null) {
Index: trunk/src/org/openstreetmap/josm/gui/tagging/TaggingPresetReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/TaggingPresetReader.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/TaggingPresetReader.java	(revision 7082)
@@ -10,4 +10,5 @@
 import java.io.InputStreamReader;
 import java.io.Reader;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -25,5 +26,4 @@
 import org.openstreetmap.josm.gui.preferences.map.TaggingPresetPreference;
 import org.openstreetmap.josm.io.MirroredInputStream;
-import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.XmlObjectParser;
 import org.xml.sax.SAXException;
@@ -40,11 +40,11 @@
      */
     public static final String PRESET_MIME_TYPES = "application/xml, text/xml, text/plain; q=0.8, application/zip, application/octet-stream; q=0.5";
-    
+
     private TaggingPresetReader() {
         // Hide default constructor for utils classes
     }
-    
+
     private static File zipIcons = null;
-    
+
     /**
      * Returns the set of preset source URLs.
@@ -70,5 +70,5 @@
         public String ref;
     }
-    
+
     public static List<TaggingPreset> readAll(Reader in, boolean validate) throws SAXException {
         XmlObjectParser parser = new XmlObjectParser();
@@ -222,5 +222,5 @@
         return all;
     }
-    
+
     public static Collection<TaggingPreset> readAll(String source, boolean validate) throws SAXException, IOException {
         Collection<TaggingPreset> tp;
@@ -233,5 +233,5 @@
                 zipIcons = s.getFile();
             }
-            try (InputStreamReader r = new InputStreamReader(zip == null ? s : zip, Utils.UTF_8)) {
+            try (InputStreamReader r = new InputStreamReader(zip == null ? s : zip, StandardCharsets.UTF_8)) {
                 tp = readAll(new BufferedReader(r), validate);
             }
@@ -289,5 +289,5 @@
         return allPresets;
     }
-    
+
     /**
      * Reads all tagging presets from sources stored in preferences.
@@ -299,5 +299,5 @@
         return readAll(getPresetSources(), validate, displayErrMsg);
     }
-    
+
     public static File getZipIcons() {
         return zipIcons;
Index: trunk/src/org/openstreetmap/josm/io/CacheCustomContent.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/CacheCustomContent.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/CacheCustomContent.java	(revision 7082)
@@ -8,7 +8,7 @@
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.nio.charset.StandardCharsets;
 
 import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -119,5 +119,5 @@
     public String updateForceString() throws T {
         updateForce();
-        return new String(data, Utils.UTF_8);
+        return new String(data, StandardCharsets.UTF_8);
     }
 
@@ -138,5 +138,5 @@
      */
     public String getDataString() throws T {
-        return new String(getData(), Utils.UTF_8);
+        return new String(getData(), StandardCharsets.UTF_8);
     }
 
Index: trunk/src/org/openstreetmap/josm/io/CacheFiles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/CacheFiles.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/CacheFiles.java	(revision 7082)
@@ -6,4 +6,5 @@
 import java.io.RandomAccessFile;
 import java.math.BigInteger;
+import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
 import java.util.Iterator;
@@ -14,5 +15,4 @@
 
 import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -321,5 +321,5 @@
         try {
             MessageDigest md = MessageDigest.getInstance("MD5");
-            BigInteger number = new BigInteger(1, md.digest(ident.getBytes(Utils.UTF_8)));
+            BigInteger number = new BigInteger(1, md.digest(ident.getBytes(StandardCharsets.UTF_8)));
             return number.toString(16);
         } catch(Exception e) {
Index: trunk/src/org/openstreetmap/josm/io/GeoJSONExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/GeoJSONExporter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/GeoJSONExporter.java	(revision 7082)
@@ -10,9 +10,9 @@
 import java.io.OutputStreamWriter;
 import java.io.Writer;
+import java.nio.charset.StandardCharsets;
 
 import org.openstreetmap.josm.actions.ExtensionFileFilter;
 import org.openstreetmap.josm.gui.layer.Layer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
-import org.openstreetmap.josm.tools.Utils;
 
 public class GeoJSONExporter extends FileExporter {
@@ -32,5 +32,5 @@
         if (layer instanceof OsmDataLayer) {
             String json = new GeoJSONWriter((OsmDataLayer) layer).write();
-            try (Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), Utils.UTF_8))) {
+            try (Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), StandardCharsets.UTF_8))) {
                 out.write(json);
             }
Index: trunk/src/org/openstreetmap/josm/io/GpxWriter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/GpxWriter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/GpxWriter.java	(revision 7082)
@@ -8,4 +8,5 @@
 import java.io.OutputStreamWriter;
 import java.io.PrintWriter;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Map;
@@ -25,5 +26,4 @@
 import org.openstreetmap.josm.data.gpx.IWithAttributes;
 import org.openstreetmap.josm.data.gpx.WayPoint;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -37,5 +37,5 @@
 
     public GpxWriter(OutputStream out) {
-        super(new PrintWriter(new BufferedWriter(new OutputStreamWriter(out, Utils.UTF_8))));
+        super(new PrintWriter(new BufferedWriter(new OutputStreamWriter(out, StandardCharsets.UTF_8))));
     }
 
Index: trunk/src/org/openstreetmap/josm/io/NmeaReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/NmeaReader.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/NmeaReader.java	(revision 7082)
@@ -5,4 +5,5 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.text.ParsePosition;
 import java.text.SimpleDateFormat;
@@ -18,5 +19,4 @@
 import org.openstreetmap.josm.data.gpx.WayPoint;
 import org.openstreetmap.josm.tools.DateUtils;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -170,5 +170,5 @@
         Collection<Collection<WayPoint>> currentTrack = new ArrayList<>();
 
-        try (BufferedReader rd = new BufferedReader(new InputStreamReader(source, Utils.UTF_8))) {
+        try (BufferedReader rd = new BufferedReader(new InputStreamReader(source, StandardCharsets.UTF_8))) {
             StringBuilder sb = new StringBuilder(1024);
             int loopstart_char = rd.read();
@@ -235,5 +235,5 @@
             if(chkstrings.length > 1)
             {
-                byte[] chb = chkstrings[0].getBytes(Utils.UTF_8);
+                byte[] chb = chkstrings[0].getBytes(StandardCharsets.UTF_8);
                 int chk=0;
                 for (int i = 1; i < chb.length; i++) {
Index: trunk/src/org/openstreetmap/josm/io/OsmApi.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmApi.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmApi.java	(revision 7082)
@@ -20,4 +20,5 @@
 import java.net.SocketTimeoutException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Collections;
@@ -190,5 +191,5 @@
         @Override
         protected byte[] updateData() throws OsmTransferException {
-            return sendRequest("GET", "capabilities", null, monitor, false, fastFail).getBytes(Utils.UTF_8);
+            return sendRequest("GET", "capabilities", null, monitor, false, fastFail).getBytes(StandardCharsets.UTF_8);
         }
     }
@@ -638,5 +639,5 @@
                         // even if there is no payload.
                         if (requestBody != null) {
-                            try (BufferedWriter bwr = new BufferedWriter(new OutputStreamWriter(out, Utils.UTF_8))) {
+                            try (BufferedWriter bwr = new BufferedWriter(new OutputStreamWriter(out, StandardCharsets.UTF_8))) {
                                 bwr.write(requestBody);
                                 bwr.flush();
@@ -670,5 +671,5 @@
                     //
                     String s;
-                    try (BufferedReader in = new BufferedReader(new InputStreamReader(i, Utils.UTF_8))) {
+                    try (BufferedReader in = new BufferedReader(new InputStreamReader(i, StandardCharsets.UTF_8))) {
                         while((s = in.readLine()) != null) {
                             responseBody.append(s);
Index: trunk/src/org/openstreetmap/josm/io/OsmChangesetContentParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmChangesetContentParser.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmChangesetContentParser.java	(revision 7082)
@@ -8,4 +8,5 @@
 import java.io.InputStreamReader;
 import java.io.StringReader;
+import java.nio.charset.StandardCharsets;
 
 import javax.xml.parsers.ParserConfigurationException;
@@ -18,5 +19,4 @@
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
-import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.XmlParsingException;
 import org.xml.sax.Attributes;
@@ -39,4 +39,5 @@
         private ChangesetDataSet.ChangesetModificationType currentModificationType;
 
+        @Override
         protected void throwException(String message) throws XmlParsingException {
             throw new XmlParsingException(message).rememberLocation(locator);
@@ -53,5 +54,5 @@
                 return;
             }
-            switch (qName) { 
+            switch (qName) {
             case "osmChange":
                 // do nothing
@@ -67,5 +68,5 @@
                 break;
             default:
-                Main.warn(tr("Unsupported start element ''{0}'' in changeset content at position ({1},{2}). Skipping.", 
+                Main.warn(tr("Unsupported start element ''{0}'' in changeset content at position ({1},{2}). Skipping.",
                         qName, locator.getLineNumber(), locator.getColumnNumber()));
             }
@@ -101,5 +102,5 @@
                 break;
             default:
-                Main.warn(tr("Unsupported end element ''{0}'' in changeset content at position ({1},{2}). Skipping.", 
+                Main.warn(tr("Unsupported end element ''{0}'' in changeset content at position ({1},{2}). Skipping.",
                         qName, locator.getLineNumber(), locator.getColumnNumber()));
             }
@@ -126,5 +127,5 @@
     public OsmChangesetContentParser(InputStream source) {
         CheckParameterUtil.ensureParameterNotNull(source, "source");
-        this.source = new InputSource(new InputStreamReader(source, Utils.UTF_8));
+        this.source = new InputSource(new InputStreamReader(source, StandardCharsets.UTF_8));
     }
 
Index: trunk/src/org/openstreetmap/josm/io/OsmChangesetParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmChangesetParser.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmChangesetParser.java	(revision 7082)
@@ -6,4 +6,5 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.text.MessageFormat;
 import java.util.LinkedList;
@@ -18,5 +19,4 @@
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.tools.DateUtils;
-import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.XmlParsingException;
 import org.xml.sax.Attributes;
@@ -225,5 +225,5 @@
             progressMonitor.beginTask("");
             progressMonitor.indeterminateSubTask(tr("Parsing list of changesets..."));
-            InputSource inputSource = new InputSource(new InvalidXmlCharacterFilter(new InputStreamReader(source, Utils.UTF_8)));
+            InputSource inputSource = new InputSource(new InvalidXmlCharacterFilter(new InputStreamReader(source, StandardCharsets.UTF_8)));
             SAXParserFactory.newInstance().newSAXParser().parse(inputSource, parser.new Parser());
             return parser.getChangesets();
Index: trunk/src/org/openstreetmap/josm/io/OsmConnection.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmConnection.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmConnection.java	(revision 7082)
@@ -10,4 +10,5 @@
 import java.nio.charset.CharacterCodingException;
 import java.nio.charset.CharsetEncoder;
+import java.nio.charset.StandardCharsets;
 
 import oauth.signpost.OAuthConsumer;
@@ -21,5 +22,4 @@
 import org.openstreetmap.josm.io.auth.CredentialsManager;
 import org.openstreetmap.josm.tools.Base64;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -76,5 +76,5 @@
      */
     protected void addBasicAuthorizationHeader(HttpURLConnection con) throws OsmTransferException {
-        CharsetEncoder encoder = Utils.UTF_8.newEncoder();
+        CharsetEncoder encoder = StandardCharsets.UTF_8.newEncoder();
         CredentialsAgentResponse response;
         String token;
Index: trunk/src/org/openstreetmap/josm/io/OsmExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmExporter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmExporter.java	(revision 7082)
@@ -11,4 +11,5 @@
 import java.io.PrintWriter;
 import java.io.Writer;
+import java.nio.charset.StandardCharsets;
 import java.text.MessageFormat;
 
@@ -72,5 +73,5 @@
             try (
                 OutputStream out = getOutputStream(file);
-                Writer writer = new OutputStreamWriter(out, Utils.UTF_8);
+                Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
                 OsmWriter w = OsmWriterFactory.createOsmWriter(new PrintWriter(writer), false, layer.data.getVersion());
             ) {
Index: trunk/src/org/openstreetmap/josm/io/OsmHistoryReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmHistoryReader.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmHistoryReader.java	(revision 7082)
@@ -7,4 +7,5 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 
 import javax.xml.parsers.ParserConfigurationException;
@@ -17,5 +18,4 @@
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
-import org.openstreetmap.josm.tools.Utils;
 import org.xml.sax.Attributes;
 import org.xml.sax.InputSource;
@@ -83,5 +83,5 @@
      */
     public HistoryDataSet parse(ProgressMonitor progressMonitor) throws SAXException, IOException {
-        InputSource inputSource = new InputSource(new InputStreamReader(in, Utils.UTF_8));
+        InputSource inputSource = new InputSource(new InputStreamReader(in, StandardCharsets.UTF_8));
         progressMonitor.beginTask(tr("Parsing OSM history data ..."));
         try {
Index: trunk/src/org/openstreetmap/josm/io/OsmServerReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmServerReader.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/OsmServerReader.java	(revision 7082)
@@ -11,4 +11,5 @@
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.List;
 import java.util.Map;
@@ -175,5 +176,5 @@
                         InputStream i = fixEncoding(activeConnection.getErrorStream(), encoding);
                         if (i != null) {
-                            BufferedReader in = new BufferedReader(new InputStreamReader(i, Utils.UTF_8));
+                            BufferedReader in = new BufferedReader(new InputStreamReader(i, StandardCharsets.UTF_8));
                             String s;
                             while((s = in.readLine()) != null) {
Index: trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java	(revision 7082)
@@ -13,4 +13,5 @@
 import java.net.URL;
 import java.net.URLConnection;
+import java.nio.charset.StandardCharsets;
 import java.text.DecimalFormat;
 import java.text.DecimalFormatSymbols;
@@ -187,5 +188,5 @@
         StringBuilder exception = new StringBuilder();
         InputStream in = conn.getInputStream();
-        try (BufferedReader br = new BufferedReader(new InputStreamReader(in, Utils.UTF_8))) {
+        try (BufferedReader br = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8))) {
             String line = null;
             while( (line = br.readLine()) != null) {
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java	(revision 7082)
@@ -12,4 +12,5 @@
 import java.io.Writer;
 import java.net.Socket;
+import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 import java.util.Date;
@@ -143,5 +144,5 @@
         try {
             OutputStream raw = new BufferedOutputStream(request.getOutputStream());
-            out = new OutputStreamWriter(raw, Utils.UTF_8);
+            out = new OutputStreamWriter(raw, StandardCharsets.UTF_8);
             BufferedReader in = new BufferedReader(new InputStreamReader(request.getInputStream(), "ASCII"));
 
@@ -394,5 +395,5 @@
                 return null;
             }
-    
+
             printJsonInfo(cmd, r, handler);
             return w.toString();
Index: trunk/src/org/openstreetmap/josm/io/session/GpxTracksSessionExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/session/GpxTracksSessionExporter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/session/GpxTracksSessionExporter.java	(revision 7082)
@@ -21,4 +21,5 @@
 import java.net.URI;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Collections;
@@ -38,5 +39,4 @@
 import org.openstreetmap.josm.io.session.SessionWriter.ExportSupport;
 import org.openstreetmap.josm.tools.GBC;
-import org.openstreetmap.josm.tools.Utils;
 import org.w3c.dom.Element;
 
@@ -181,5 +181,5 @@
     @SuppressWarnings("resource")
     protected void addDataFile(OutputStream out) {
-        Writer writer = new OutputStreamWriter(out, Utils.UTF_8);
+        Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
         GpxWriter w = new GpxWriter(new PrintWriter(writer));
         w.write(layer.data);
Index: trunk/src/org/openstreetmap/josm/io/session/MarkerSessionExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/session/MarkerSessionExporter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/session/MarkerSessionExporter.java	(revision 7082)
@@ -9,4 +9,5 @@
 import java.io.PrintWriter;
 import java.io.Writer;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Collections;
@@ -25,5 +26,4 @@
 import org.openstreetmap.josm.io.session.SessionWriter.ExportSupport;
 import org.openstreetmap.josm.tools.GBC;
-import org.openstreetmap.josm.tools.Utils;
 import org.w3c.dom.Element;
 
@@ -86,5 +86,5 @@
     @SuppressWarnings("resource")
     protected void addDataFile(OutputStream out) {
-        Writer writer = new OutputStreamWriter(out, Utils.UTF_8);
+        Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
         MarkerWriter w = new MarkerWriter(new PrintWriter(writer));
         w.write(layer);
Index: trunk/src/org/openstreetmap/josm/io/session/OsmDataSessionExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/session/OsmDataSessionExporter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/session/OsmDataSessionExporter.java	(revision 7082)
@@ -21,4 +21,5 @@
 import java.net.URI;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.Collection;
 import java.util.Collections;
@@ -43,5 +44,4 @@
 import org.openstreetmap.josm.tools.GBC;
 import org.openstreetmap.josm.tools.ImageProvider;
-import org.openstreetmap.josm.tools.Utils;
 import org.w3c.dom.Element;
 
@@ -210,5 +210,5 @@
 
     protected void addDataFile(OutputStream out) {
-        Writer writer = new OutputStreamWriter(out, Utils.UTF_8);
+        Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
         OsmWriter w = OsmWriterFactory.createOsmWriter(new PrintWriter(writer), false, layer.data.getVersion());
         layer.data.getReadLock().lock();
Index: trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java	(revision 7082)
@@ -10,4 +10,5 @@
 import java.io.OutputStreamWriter;
 import java.lang.reflect.Constructor;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -223,5 +224,5 @@
     public void writeJos(Document doc, OutputStream out) throws IOException {
         try {
-            OutputStreamWriter writer = new OutputStreamWriter(out, Utils.UTF_8);
+            OutputStreamWriter writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
             writer.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
             TransformerFactory transfac = TransformerFactory.newInstance();
Index: trunk/src/org/openstreetmap/josm/plugins/PluginListParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/plugins/PluginListParser.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/plugins/PluginListParser.java	(revision 7082)
@@ -9,9 +9,9 @@
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.LinkedList;
 import java.util.List;
 
 import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.tools.Utils;
 
 /**
@@ -37,5 +37,5 @@
         try {
             return new PluginInformation(
-                    new ByteArrayInputStream(manifest.getBytes(Utils.UTF_8)),
+                    new ByteArrayInputStream(manifest.getBytes(StandardCharsets.UTF_8)),
                     name.substring(0, name.length() - 4),
                     url
@@ -61,5 +61,5 @@
         BufferedReader r = null;
         try {
-            r = new BufferedReader(new InputStreamReader(in, Utils.UTF_8));
+            r = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8));
             String name = null;
             String url = null;
Index: trunk/src/org/openstreetmap/josm/plugins/ReadRemotePluginInformationTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/plugins/ReadRemotePluginInformationTask.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/plugins/ReadRemotePluginInformationTask.java	(revision 7082)
@@ -20,4 +20,5 @@
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -172,5 +173,5 @@
                 connection.setRequestProperty("Accept-Charset", "utf-8");
             }
-            try (BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), Utils.UTF_8))) {
+            try (BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) {
                 StringBuilder sb = new StringBuilder();
                 String line;
@@ -204,5 +205,5 @@
         try (InputStream errStream = connection.getErrorStream()) {
             if (errStream != null) {
-                try (BufferedReader err = new BufferedReader(new InputStreamReader(errStream, Utils.UTF_8))) {
+                try (BufferedReader err = new BufferedReader(new InputStreamReader(errStream, StandardCharsets.UTF_8))) {
                     String line;
                     while ((line = err.readLine()) != null) {
@@ -323,5 +324,5 @@
         File cacheFile = createSiteCacheFile(pluginDir, site, CacheType.PLUGIN_LIST);
         getProgressMonitor().subTask(tr("Writing plugin list to local cache ''{0}''", cacheFile.toString()));
-        try (PrintWriter writer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(cacheFile), Utils.UTF_8))) {
+        try (PrintWriter writer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(cacheFile), StandardCharsets.UTF_8))) {
             writer.write(list);
             writer.flush();
@@ -363,5 +364,5 @@
         try {
             getProgressMonitor().subTask(tr("Parsing plugin list from site ''{0}''", site));
-            InputStream in = new ByteArrayInputStream(doc.getBytes(Utils.UTF_8));
+            InputStream in = new ByteArrayInputStream(doc.getBytes(StandardCharsets.UTF_8));
             List<PluginInformation> pis = new PluginListParser().parse(in);
             availablePlugins.addAll(filterDeprecatedPlugins(pis));
Index: trunk/src/org/openstreetmap/josm/tools/BugReportExceptionHandler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/BugReportExceptionHandler.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/tools/BugReportExceptionHandler.java	(revision 7082)
@@ -12,4 +12,5 @@
 import java.net.URL;
 import java.nio.ByteBuffer;
+import java.nio.charset.StandardCharsets;
 import java.util.zip.GZIPOutputStream;
 
@@ -42,9 +43,9 @@
     private static int exceptionCounter = 0;
     private static boolean suppressExceptionDialogs = false;
-    
+
     private static class BugReporterThread extends Thread {
-        
+
         final Throwable e;
-        
+
         public BugReporterThread(Throwable t) {
             super("Bug Reporter");
@@ -139,5 +140,5 @@
         }
     }
-    
+
     private static void askForBugReport(final Throwable e) {
         try {
@@ -215,5 +216,5 @@
             GZIPOutputStream gzip = new GZIPOutputStream(out)
         ) {
-            gzip.write(debugText.getBytes(Utils.UTF_8));
+            gzip.write(debugText.getBytes(StandardCharsets.UTF_8));
             gzip.finish();
 
Index: trunk/src/org/openstreetmap/josm/tools/I18n.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/I18n.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/tools/I18n.java	(revision 7082)
@@ -8,4 +8,5 @@
 import java.io.InputStream;
 import java.net.URL;
+import java.nio.charset.StandardCharsets;
 import java.text.MessageFormat;
 import java.util.ArrayList;
@@ -532,5 +533,5 @@
                         if(rval != val) /* file corrupt */
                             return false;
-                        enstrings[i] = new String(str, 0, val, Utils.UTF_8);
+                        enstrings[i] = new String(str, 0, val, StandardCharsets.UTF_8);
                     }
                     for(int i = 0; i < trnum; ++i)
@@ -546,5 +547,5 @@
                         if(rval != val) /* file corrupt */
                             return false;
-                        trstrings[i] = new String(str, 0, val, Utils.UTF_8);
+                        trstrings[i] = new String(str, 0, val, StandardCharsets.UTF_8);
                     }
                     if(trnum > 0 && !p.containsKey(enstrings[0])) {
@@ -572,11 +573,9 @@
                         if(trval != 0xFFFF) /* files do not match */
                             return false;
-                    }
-                    else
-                    {
-                        if(enval > str.length) {
+                    } else {
+                        if (enval > str.length) {
                             str = new byte[enval];
                         }
-                        if(trval > str.length) {
+                        if (trval > str.length) {
                             str = new byte[trval];
                         }
@@ -584,11 +583,10 @@
                         if(val != enval) /* file corrupt */
                             return false;
-                        String enstr = new String(str, 0, enval, Utils.UTF_8);
-                        if(trval != 0)
-                        {
+                        String enstr = new String(str, 0, enval, StandardCharsets.UTF_8);
+                        if (trval != 0) {
                             val = trs.read(str, 0, trval);
                             if(val != trval) /* file corrupt */
                                 return false;
-                            String trstr = new String(str, 0, trval, Utils.UTF_8);
+                            String trstr = new String(str, 0, trval, StandardCharsets.UTF_8);
                             if(!s.containsKey(enstr))
                                 s.put(enstr, trstr);
@@ -598,10 +596,8 @@
             }
         }
-        catch(IOException e)
-        {
+        catch (IOException e) {
             return false;
         }
-        if(!s.isEmpty())
-        {
+        if (!s.isEmpty()) {
             strings = s;
             pstrings = p;
Index: trunk/src/org/openstreetmap/josm/tools/ImageProvider.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 7082)
@@ -24,4 +24,5 @@
 import java.net.URLDecoder;
 import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -537,5 +538,5 @@
                 } else {
                     try {
-                        bytes = URLDecoder.decode(data, "UTF-8").getBytes(Utils.UTF_8);
+                        bytes = URLDecoder.decode(data, "UTF-8").getBytes(StandardCharsets.UTF_8);
                     } catch (IllegalArgumentException ex) {
                         Main.warn("Unable to decode URL data part: "+ex.getMessage() + " (" + data + ")");
@@ -544,5 +545,5 @@
                 }
                 if (mediatype != null && mediatype.contains("image/svg+xml")) {
-                    String s = new String(bytes, Utils.UTF_8);
+                    String s = new String(bytes, StandardCharsets.UTF_8);
                     URI uri = getSvgUniverse().loadSVG(new StringReader(s), URLEncoder.encode(s, "UTF-8"));
                     SVGDiagram svg = getSvgUniverse().getDiagram(uri);
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 7082)
@@ -15,4 +15,5 @@
 import java.net.URI;
 import java.net.URISyntaxException;
+import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 
@@ -201,5 +202,5 @@
                 // Try lsb_release (only available on LSB-compliant Linux systems, see https://www.linuxbase.org/lsb-cert/productdir.php?by_prod )
                 Process p = Runtime.getRuntime().exec("lsb_release -ds");
-                try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream(), Utils.UTF_8))) {
+                try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream(), StandardCharsets.UTF_8))) {
                     String line = Utils.strip(input.readLine());
                     if (line != null && !line.isEmpty()) {
@@ -284,5 +285,5 @@
                 File file = new File(path);
                 if (file.exists()) {
-                    try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), Utils.UTF_8))) {
+                    try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), StandardCharsets.UTF_8))) {
                         String id = null;
                         String release = null;
Index: trunk/src/org/openstreetmap/josm/tools/Utils.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 7081)
+++ trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 7082)
@@ -27,5 +27,5 @@
 import java.net.URLConnection;
 import java.net.URLEncoder;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Path;
@@ -63,11 +63,4 @@
     }
 
-    /**
-     * UTF-8 (UCS Transformation Format—8-bit).
-     *
-     * <p>Every implementation of the Java platform is required to support UTF-8 (see {@link Charset}).</p>
-     */
-    public static final Charset UTF_8 = Charset.forName("UTF-8");
-
     private static final int MILLIS_OF_SECOND = 1000;
     private static final int MILLIS_OF_MINUTE = 60000;
@@ -476,5 +469,5 @@
      */
     public static String md5Hex(String data) {
-        byte[] byteData = data.getBytes(UTF_8);
+        byte[] byteData = data.getBytes(StandardCharsets.UTF_8);
         MessageDigest md = null;
         try {
@@ -726,5 +719,5 @@
      */
     public static BufferedReader openURLReaderAndDecompress(final URL url, final boolean decompress) throws IOException {
-        return new BufferedReader(new InputStreamReader(openURLAndDecompress(url, decompress), UTF_8));
+        return new BufferedReader(new InputStreamReader(openURLAndDecompress(url, decompress), StandardCharsets.UTF_8));
     }
 
@@ -801,5 +794,5 @@
         }
         Process p = new ProcessBuilder(command).start();
-        try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream(), UTF_8))) {
+        try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream(), StandardCharsets.UTF_8))) {
             StringBuilder all = null;
             String line;
