diff options
author | Nick Burch <nick@apache.org> | 2008-05-06 16:38:34 +0000 |
---|---|---|
committer | Nick Burch <nick@apache.org> | 2008-05-06 16:38:34 +0000 |
commit | 21cbfa84405326a04e3dc0516a07c78297c634e6 (patch) | |
tree | e829eca22082b7760cf8053734c52d886f08ff75 /src/java/org/apache/poi/hssf | |
parent | 700d7a5dea73a629ca7da76cf9e517995f28890a (diff) | |
download | poi-21cbfa84405326a04e3dc0516a07c78297c634e6.tar.gz poi-21cbfa84405326a04e3dc0516a07c78297c634e6.zip |
Fix up the functionMetadata.txt stuff to be end-to-end UTF8. Was assuming it before, but breaking on some systems, while now it ought to work fine everywhere
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@653831 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org/apache/poi/hssf')
-rw-r--r-- | src/java/org/apache/poi/hssf/record/formula/function/FunctionMetadataReader.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/java/org/apache/poi/hssf/record/formula/function/FunctionMetadataReader.java b/src/java/org/apache/poi/hssf/record/formula/function/FunctionMetadataReader.java index 2cdc540e6f..9ea428c8df 100644 --- a/src/java/org/apache/poi/hssf/record/formula/function/FunctionMetadataReader.java +++ b/src/java/org/apache/poi/hssf/record/formula/function/FunctionMetadataReader.java @@ -21,6 +21,7 @@ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.UnsupportedEncodingException; import java.util.Arrays; import java.util.HashSet; import java.util.Set; @@ -58,7 +59,10 @@ final class FunctionMetadataReader { throw new RuntimeException("resource '" + METADATA_FILE_NAME + "' not found"); } - BufferedReader br = new BufferedReader(new InputStreamReader(is)); + BufferedReader br = null; + try { + br = new BufferedReader(new InputStreamReader(is,"UTF-8")); + } catch(UnsupportedEncodingException e) { /* never happens */ } FunctionDataBuilder fdb = new FunctionDataBuilder(400); try { @@ -153,7 +157,7 @@ final class FunctionMetadataReader { case 'R': return Ptg.CLASS_REF; case 'A': return Ptg.CLASS_ARRAY; } - throw new IllegalArgumentException("Unexpected operand type code '" + code + "'"); + throw new IllegalArgumentException("Unexpected operand type code '" + code + "' (" + (int)code.charAt(0) + ")"); } /** |