]> source.dussan.org Git - poi.git/commitdiff
use case-insensitive string startsWith/endsWith utility function
authorJaven O'Neal <onealj@apache.org>
Mon, 2 Jan 2017 22:23:56 +0000 (22:23 +0000)
committerJaven O'Neal <onealj@apache.org>
Mon, 2 Jan 2017 22:23:56 +0000 (22:23 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1777031 13f79535-47bb-0310-9956-ffa450edef68

src/examples/src/org/apache/poi/ss/examples/AddDimensionedImage.java
src/java/org/apache/poi/ss/formula/atp/AnalysisToolPak.java
src/java/org/apache/poi/ss/util/CellReference.java
src/scratchpad/src/org/apache/poi/hsmf/extractor/OutlookTextExtactor.java

index a7ef6d2ba2ab6b1827ec15ce00b499995464eb6e..a9099f5756dbe28f0e28874f76366d3075557a30 100644 (file)
@@ -387,7 +387,7 @@ public class AddDimensionedImage {
        if( sURL.endsWith(".png") ) {\r
             imageType = Workbook.PICTURE_TYPE_PNG;\r
        }\r
-       else if( sURL.endsWith("jpg") || sURL.endsWith(".jpeg") ) {\r
+       else if( sURL.endsWith(".jpg") || sURL.endsWith(".jpeg") ) {\r
             imageType = Workbook.PICTURE_TYPE_JPEG;\r
        }\r
        else  {\r
index a0da336d77c547034b85a8f6e601f7bec98e4048..ad3be2fb4021b62d4d9f187984d5bb340a449c1d 100644 (file)
@@ -69,7 +69,9 @@ public final class AnalysisToolPak implements UDFFinder {
     public FreeRefFunction findFunction(String name) {
         // functions that are available in Excel 2007+ have a prefix _xlfn.
         // if you save such a .xlsx workbook as .xls
-        if(name.startsWith("_xlfn.")) name = name.substring(6);
+        final String prefix = "_xlfn.";
+        // case-sensitive
+        if(name.startsWith(prefix)) name = name.substring(prefix.length());
 
         // FIXME: inconsistent case-sensitivity
         return _functionsByName.get(name.toUpperCase(Locale.ROOT));
index 6adc5300754b44ead9f81be55102ad6aa9e7d3ee..c07ee5bf926a1599a79c8ec56a4384c312755438 100644 (file)
@@ -17,6 +17,8 @@
 
 package org.apache.poi.ss.util;
 
+import static org.apache.poi.util.StringUtil.endsWithIgnoreCase;
+
 import java.util.Locale;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -104,7 +106,7 @@ public class CellReference {
      * delimited and escaped as per normal syntax rules for formulas.
      */
     public CellReference(String cellRef) {
-        if(cellRef.toUpperCase(Locale.ROOT).endsWith("#REF!")) {
+        if(endsWithIgnoreCase(cellRef, "#REF!")) {
             throw new IllegalArgumentException("Cell reference invalid: " + cellRef);
         }
 
index 960c9799e4c2be3c739a06e266b3714ea80f4363..00b82d07ad800c16e7a4eceb7ebc4b7e5f58353e 100644 (file)
@@ -16,6 +16,8 @@
 ==================================================================== */
 package org.apache.poi.hsmf.extractor;
 
+import static org.apache.poi.util.StringUtil.startsWithIgnoreCase;
+
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
@@ -130,7 +132,7 @@ public class OutlookTextExtactor extends POIOLE2TextExtractor {
             // Failing that try via the raw headers 
             String[] headers = msg.getHeaders();
             for(String header: headers) {
-               if(header.toLowerCase(Locale.ROOT).startsWith("date:")) {
+               if(startsWithIgnoreCase(header, "date:")) {
                   s.append(
                         "Date:" + 
                         header.substring(header.indexOf(':')+1) +