]> source.dussan.org Git - poi.git/commitdiff
use StandardCharsets
authorPJ Fanning <fanningpj@apache.org>
Tue, 19 Dec 2017 00:23:52 +0000 (00:23 +0000)
committerPJ Fanning <fanningpj@apache.org>
Tue, 19 Dec 2017 00:23:52 +0000 (00:23 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1818628 13f79535-47bb-0310-9956-ffa450edef68

19 files changed:
src/examples/src/org/apache/poi/hwpf/Word2Forrest.java
src/integrationtest/org/apache/poi/stress/HPSFFileHandler.java
src/java/org/apache/poi/poifs/crypt/DataSpaceMapUtils.java
src/java/org/apache/poi/poifs/filesystem/FileMagic.java
src/java/org/apache/poi/util/HexDump.java
src/java/org/apache/poi/util/ReplacingInputStream.java
src/java/org/apache/poi/util/StringUtil.java
src/ooxml/java/org/apache/poi/openxml4j/opc/PackagingURIHelper.java
src/ooxml/java/org/apache/poi/poifs/crypt/dsig/services/TSPTimeStampService.java
src/ooxml/java/org/apache/poi/xssf/binary/XSSFBUtils.java
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFBuiltinTableStyle.java
src/ooxml/testcases/org/apache/poi/poifs/crypt/TestHxxFEncryption.java
src/ooxml/testcases/org/apache/poi/xssf/streaming/TestSXSSFWorkbookWithCustomZipEntrySource.java
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java
src/ooxml/testcases/org/apache/poi/xssf/util/TestEvilUnclosedBRFixingInputStream.java
src/scratchpad/src/org/apache/poi/hdgf/chunks/ChunkHeaderV11.java
src/scratchpad/src/org/apache/poi/hemf/record/HemfText.java
src/scratchpad/src/org/apache/poi/hslf/dev/PPTXMLDump.java
src/scratchpad/src/org/apache/poi/hwmf/record/HwmfFont.java

index 4a8ef5ad1ffa1b57210a5e9fcfe2c9a59dc82391..e773efb5d1de4e5f809d2b27497c5c6e4039545f 100644 (file)
@@ -24,7 +24,7 @@ import java.io.InputStream;
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.io.Writer;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import org.apache.poi.hwpf.model.StyleDescription;
 import org.apache.poi.hwpf.model.StyleSheet;
@@ -40,7 +40,7 @@ public final class Word2Forrest
   @SuppressWarnings("unused")
   public Word2Forrest(HWPFDocument doc, OutputStream stream) throws IOException
   {
-      _out = new OutputStreamWriter (stream, Charset.forName("UTF-8"));
+      _out = new OutputStreamWriter (stream, StandardCharsets.UTF_8);
     _doc = doc;
 
     init ();
index e348d964e061cc89b7867fdc9f267006a71a99c0..cf0ebd0943deef8c3ba621b06b860c46628054c6 100644 (file)
@@ -24,7 +24,7 @@ import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.PrintStream;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
@@ -110,7 +110,7 @@ public class HPSFFileHandler extends POIFSFileHandler {
         try {
             System.setOut(psNew);
             CopyCompare.main(new String[]{file.getAbsolutePath(), copyOutput.getAbsolutePath()});
-            assertEquals("Equal" + NL, new String(bos.toByteArray(), Charset.forName("UTF-8")));
+            assertEquals("Equal" + NL, new String(bos.toByteArray(), StandardCharsets.UTF_8));
         } finally {
             System.setOut(ps);
         }
index 38f0b533c4b4e738dd69b0f7c010813233ea9f50..5f21b52b909acb192f3ad8ec1cc469427c8396f6 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.poifs.crypt;
 
 import java.io.IOException;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import org.apache.poi.EncryptedDocumentException;
 import org.apache.poi.poifs.crypt.standard.EncryptionRecord;
@@ -352,7 +352,7 @@ public class DataSpaceMapUtils {
             }
         }
 
-        return new String(data, 0, data.length, Charset.forName("UTF-8"));
+        return new String(data, 0, data.length, StandardCharsets.UTF_8);
     }
     
     public static void writeUtf8LPP4(LittleEndianOutput os, String str) {
@@ -360,7 +360,7 @@ public class DataSpaceMapUtils {
             os.writeInt(str == null ? 0 : 4);
             os.writeInt(0);
         } else {
-            byte buf[] = str.getBytes(Charset.forName("UTF-8"));
+            byte buf[] = str.getBytes(StandardCharsets.UTF_8);
             os.writeInt(buf.length);
             os.write(buf);
             int scratchBytes = buf.length%4;
index c7fe7ca99c31cdf1f5ce6f15c4c0939a367457da..6bde1ced8e407cd1d47dd3d11ca804d18e799afc 100644 (file)
@@ -19,11 +19,11 @@ package org.apache.poi.poifs.filesystem;
 
 import static org.apache.poi.poifs.common.POIFSConstants.OOXML_FILE_HEADER;
 import static org.apache.poi.poifs.common.POIFSConstants.RAW_XML_FILE_HEADER;
+import static java.nio.charset.StandardCharsets.UTF_8;
 
 import java.io.BufferedInputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.nio.charset.Charset;
 
 import org.apache.poi.poifs.storage.HeaderBlockConstants;
 import org.apache.poi.util.IOUtils;
@@ -76,7 +76,7 @@ public enum FileMagic {
     /** PDF document */
     PDF("%PDF"),
     /** Some different HTML documents */
-    HTML("<!DOCTYP".getBytes(Charset.forName("UTF-8")), "<html".getBytes(Charset.forName("UTF-8"))),
+    HTML("<!DOCTYP".getBytes(UTF_8), "<html".getBytes(UTF_8)),
     // keep UNKNOWN always as last enum!
     /** UNKNOWN magic */
     UNKNOWN(new byte[0]);
index 7f803b9584696a05b8fb747dbdde028d917dd417..d61c1b17597826e9c5831e9a2bfcde94f2809832 100644 (file)
@@ -25,8 +25,7 @@ import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.io.PrintStream;
 import java.nio.charset.Charset;
-
-import org.apache.commons.codec.CharEncoding;
+import java.nio.charset.StandardCharsets;
 
 /**
  * dump data in hexadecimal format
@@ -34,7 +33,7 @@ import org.apache.commons.codec.CharEncoding;
 @Internal
 public class HexDump {
     public static final String EOL = System.getProperty("line.separator");
-    public static final Charset UTF8 = Charset.forName(CharEncoding.UTF_8);
+    public static final Charset UTF8 = StandardCharsets.UTF_8;
 
     private HexDump() {
         // all static methods, so no need for a public constructor
index 884bd838f233618248c34a050f6e48c10257830d..6b157599fcbcfa4c84f6b0d66934d2a9afa98f16 100644 (file)
 
 package org.apache.poi.util;
 
+import static java.nio.charset.StandardCharsets.UTF_8;
+
 import java.io.FilterInputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.nio.charset.Charset;
 import java.util.Arrays;
 
 /**
@@ -51,8 +52,6 @@ public class ReplacingInputStream extends FilterInputStream {
         UNBUFFER
     }
 
-    private static final Charset UTF8 = Charset.forName("UTF-8");
-
     /**
      * Replace occurrences of pattern in the input. Note: input is assumed to be UTF-8 encoded. If not the case use byte[] based pattern and replacement.
      * @param in input
@@ -60,7 +59,7 @@ public class ReplacingInputStream extends FilterInputStream {
      * @param replacement the replacement or null
      */
     public ReplacingInputStream(InputStream in, String pattern, String replacement) {
-        this(in, pattern.getBytes(UTF8), replacement==null ? null : replacement.getBytes(UTF8));
+        this(in, pattern.getBytes(UTF_8), replacement==null ? null : replacement.getBytes(UTF_8));
     }
 
     /**
index b45c15f2bd00e349d68a1460cc28b1f56e50fc92..ee0fe27215db39f9cddec77c3582a146ba1c4805 100644 (file)
@@ -18,6 +18,7 @@
 package org.apache.poi.util;
 
 import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Locale;
@@ -28,12 +29,12 @@ import java.util.Map;
  */
 @Internal
 public class StringUtil {
-    protected static final Charset ISO_8859_1 = Charset.forName("ISO-8859-1");
+    protected static final Charset ISO_8859_1 = StandardCharsets.ISO_8859_1;
     //arbitrarily selected; may need to increase
     private static final int MAX_RECORD_LENGTH = 10000000;
 
-    public static final Charset UTF16LE = Charset.forName("UTF-16LE");
-    public static final Charset UTF8 = Charset.forName("UTF-8");
+    public static final Charset UTF16LE = StandardCharsets.UTF_16LE;
+    public static final Charset UTF8 = StandardCharsets.UTF_8;
     public static final Charset WIN_1252 = Charset.forName("cp1252");
     public static final Charset BIG5 = Charset.forName("Big5");
 
index 2ed32223df4ac80dc5b45bf0cbcc8ca58f1095b2..1c7f29cf6fc83f15a0ddc58bd1cd26f451524bf5 100644 (file)
@@ -20,7 +20,7 @@ package org.apache.poi.openxml4j.opc;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.nio.ByteBuffer;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.regex.Pattern;
 
 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
@@ -747,7 +747,7 @@ public final class PackagingURIHelper {
         int n = s.length();
         if (n == 0) return s;
 
-        ByteBuffer bb  = ByteBuffer.wrap(s.getBytes(Charset.forName("UTF-8")));
+        ByteBuffer bb  = ByteBuffer.wrap(s.getBytes(StandardCharsets.UTF_8));
         StringBuilder sb = new StringBuilder();
         while (bb.hasRemaining()) {
             int b = bb.get() & 0xff;
index 8207a0900dd0a767943f6971b5635254ae638b49..9330c1948cbfa9d83c44ffc85c0a7b4faadbda80 100644 (file)
@@ -33,7 +33,7 @@ import java.net.InetAddress;
 import java.net.InetSocketAddress;
 import java.net.Proxy;
 import java.net.URL;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
 import java.security.SecureRandom;
 import java.security.cert.X509Certificate;
@@ -129,7 +129,7 @@ public class TSPTimeStampService implements TimeStampService {
         
         if (signatureConfig.getTspUser() != null) {
             String userPassword = signatureConfig.getTspUser() + ":" + signatureConfig.getTspPass();
-            String encoding = DatatypeConverter.printBase64Binary(userPassword.getBytes(Charset.forName("iso-8859-1")));
+            String encoding = DatatypeConverter.printBase64Binary(userPassword.getBytes(StandardCharsets.ISO_8859_1));
             huc.setRequestProperty("Authorization", "Basic " + encoding);
         }
 
index 448e50c0b7ed2a82d52f5f0b0e8d7760511cece2..bfc274c698576e5364fa1d8bf4fa4b6f25a6ead9 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.xssf.binary;
 
 
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import org.apache.poi.POIXMLException;
 import org.apache.poi.util.Internal;
@@ -54,7 +54,7 @@ public class XSSFBUtils {
             throw new XSSFBParseException("trying to read beyond data length:" +
              "offset="+offset+", numBytes="+numBytes+", data.length="+data.length);
         }
-        sb.append(new String(data, offset, numBytes, Charset.forName("UTF-16LE")));
+        sb.append(new String(data, offset, numBytes, StandardCharsets.UTF_16LE));
         numBytes+=4;
         return numBytes;
     }
@@ -80,7 +80,7 @@ public class XSSFBUtils {
         if (offset+numBytes > data.length) {
             throw new XSSFBParseException("trying to read beyond data length");
         }
-        sb.append(new String(data, offset, numBytes, Charset.forName("UTF-16LE")));
+        sb.append(new String(data, offset, numBytes, StandardCharsets.UTF_16LE));
         numBytes+=4;
         return numBytes;
     }
index 84a5e916b3f42bb250f029e19d24d1935209ef60..b44d4286ac97ef4ef3ad7903902bcbc8a3766dd8 100644 (file)
@@ -19,7 +19,7 @@ package org.apache.poi.xssf.usermodel;
 
 import java.io.ByteArrayInputStream;
 import java.io.InputStream;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.EnumMap;
 import java.util.Map;
 
@@ -403,7 +403,7 @@ public enum XSSFBuiltinTableStyle {
                     // hack because I can't figure out how to get XMLBeans to parse a sub-element in a standalone manner
                     // - build a fake styles.xml file with just this built-in
                     StylesTable styles = new StylesTable();
-                    styles.readFrom(new ByteArrayInputStream(styleXML(dxfsNode, tableStyleNode).getBytes(Charset.forName("UTF-8"))));
+                    styles.readFrom(new ByteArrayInputStream(styleXML(dxfsNode, tableStyleNode).getBytes(StandardCharsets.UTF_8)));
                     styleMap.put(builtIn, new XSSFBuiltinTypeStyleStyle(builtIn, styles.getExplicitTableStyle(styleName)));
                 }
             } finally {
index eda48b6eee19066fdf5d3534bfd6c8be43b3d3b9..68c8bfa054e88ce27e22087d1d54fc9a81ac28c5 100644 (file)
@@ -28,7 +28,7 @@ import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 import java.util.Collection;
 
@@ -94,7 +94,7 @@ public class TestHxxFEncryption {
     }
 
     private static String x(String base64) throws IOException {
-        return new String(RawDataUtil.decompress(base64), Charset.forName("UTF-8"));
+        return new String(RawDataUtil.decompress(base64), StandardCharsets.UTF_8);
     }
     
     @Test
index 43c3f22ff532f1ba49410ba604241524c4040de2..e9f266939727ee1df9b12a8654c53e38bb94d859 100644 (file)
@@ -22,6 +22,7 @@ package org.apache.poi.xssf.streaming;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static java.nio.charset.StandardCharsets.UTF_8;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -102,11 +103,6 @@ public final class TestSXSSFWorkbookWithCustomZipEntrySource {
         opc.close();
     }
     
-    // Java 7 and above:
-    // import static java.nio.charset.StandardCharsets.UTF_8;
-    // Java 6 and below:
-    private static final Charset UTF_8 = Charset.forName("UTF-8");
-    
     @Test
     public void validateTempFilesAreEncrypted() throws IOException {
         TempFileRecordingSXSSFWorkbookWithCustomZipEntrySource workbook = new TempFileRecordingSXSSFWorkbookWithCustomZipEntrySource();
index 2971c2666d8fe745deadf2edf3d6d3beae38b285..c9fdf648193735894b488a9b92feeec679285b35 100644 (file)
@@ -23,11 +23,8 @@ import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
 import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
 import java.io.IOException;
-import java.io.OutputStream;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.Calendar;
 import java.util.Date;
 
@@ -86,7 +83,7 @@ public final class TestUnfixedBugs {
     private void verifyBug54084Unicode(Workbook wb) {
         // expected data is stored in UTF-8 in a text-file
         byte data[] = HSSFTestDataSamples.getTestDataFileContent("54084 - Greek - beyond BMP.txt");
-        String testData = new String(data, Charset.forName("UTF-8")).trim();
+        String testData = new String(data, StandardCharsets.UTF_8).trim();
 
         Sheet sheet = wb.getSheetAt(0);
         Row row = sheet.getRow(0);
index d9010fbbc2ef50e072c6158f4b73a23dbfc645ff..c4a8b52f9aa5e837feb3a4f653a50eac020dc099 100644 (file)
@@ -22,7 +22,7 @@ import static org.junit.Assert.assertArrayEquals;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.ReplacingInputStream;
@@ -89,6 +89,6 @@ public final class TestEvilUnclosedBRFixingInputStream {
     }
 
     private static byte[] getBytes(String str) {
-        return str.getBytes(Charset.forName("UTF-8"));
+        return str.getBytes(StandardCharsets.UTF_8);
     }
 }
index ca243c9963f0d33b584291171660395fb97f51ec..3dc1e8113ee001c07b55ced75d009f7be5846198 100644 (file)
@@ -18,6 +18,7 @@
 package org.apache.poi.hdgf.chunks;
 
 import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 /**
  * A chunk header from v11+
@@ -62,6 +63,6 @@ public final class ChunkHeaderV11 extends ChunkHeaderV6 {
 
     @Override
     public Charset getChunkCharset() {
-        return Charset.forName("UTF-16LE");
+        return StandardCharsets.UTF_16LE;
     }
 }
index 6d3a1b297d4de8b4c5db6d6bfd2b738683223029..74b82128461391ca62ab812c0fe095f7b0225d3c 100644 (file)
@@ -17,6 +17,7 @@
 
 package org.apache.poi.hemf.record;
 
+import static java.nio.charset.StandardCharsets.UTF_16LE;
 
 import java.io.ByteArrayInputStream;
 import java.io.EOFException;
@@ -39,7 +40,6 @@ import org.apache.poi.util.RecordFormatException;
 @Internal
 public class HemfText {
 
-    private static final Charset UTF16LE = Charset.forName("UTF-16LE");
     private static final int MAX_RECORD_LENGTH = 1_000_000;
 
     public static class ExtCreateFontIndirectW extends UnimplementedHemfRecord {
@@ -162,11 +162,11 @@ public class HemfText {
 
         @Override
         protected Charset getEncodingHint() {
-            return UTF16LE;
+            return UTF_16LE;
         }
 
         public String getText() throws IOException {
-            return getText(UTF16LE);
+            return getText(UTF_16LE);
         }
     }
 
index a14a09bea4e50a23c4fc55a20e941edfc5f0e5b0..b2c84af24feda9e0855cea721a76b426b772755a 100644 (file)
@@ -25,7 +25,7 @@ import java.io.InputStream;
 import java.io.OutputStreamWriter;
 import java.io.StringWriter;
 import java.io.Writer;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import org.apache.poi.hslf.record.RecordTypes;
 import org.apache.poi.hslf.usermodel.HSLFSlideShow;
@@ -212,7 +212,7 @@ public final class PPTXMLDump {
 
                 if (outFile){
                     FileOutputStream fos = new FileOutputStream(ppt.getName() + ".xml");
-                    OutputStreamWriter out = new OutputStreamWriter(fos, Charset.forName("UTF8"));
+                    OutputStreamWriter out = new OutputStreamWriter(fos, StandardCharsets.UTF_8);
                     dump.dump(out);
                     out.close();
                 } else {
index ac667f73fcb700dc78ae58813d29b69805631b42..f094ae1959a147d46dcdeca0e08c64969c748a21 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.hwmf.record;
 
 import java.io.IOException;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import org.apache.poi.common.usermodel.fonts.FontCharset;
 import org.apache.poi.common.usermodel.fonts.FontFamily;
@@ -369,7 +369,7 @@ public class HwmfFont implements FontInfo {
             buf[readBytes++] = b = leis.readByte();
         } while (b != 0 && b != -1 && readBytes <= 32);
         
-        facename = new String(buf, 0, readBytes-1, Charset.forName("ISO-8859-1"));
+        facename = new String(buf, 0, readBytes-1, StandardCharsets.ISO_8859_1);
         
         return 5*LittleEndianConsts.SHORT_SIZE+8*LittleEndianConsts.BYTE_SIZE+readBytes;
     }