⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stringutils.java

📁 Java有关XML编程需要用到axis 的源代码 把里面bin下的包导入相应的Java工程 进行使用
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* * Copyright 2001-2004 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.axis.utils;import org.apache.axis.InternalException;import java.util.ArrayList;import java.util.List;import java.io.Writer;import java.io.IOException;import java.io.StringWriter;public class StringUtils {    private StringUtils() {    }    /**     * An empty immutable <code>String</code> array.     */    public static final String[] EMPTY_STRING_ARRAY = new String[0];        /**     * Tests if this string starts with the specified prefix (Ignoring whitespaces)      * @param prefix     * @param string     * @return boolean     */     public static boolean startsWithIgnoreWhitespaces(String prefix, String string) {        int index1 = 0;        int index2 = 0;        int length1 = prefix.length();        int length2 = string.length();        char ch1 = ' ';        char ch2 = ' ';        while (index1 < length1 && index2 < length2) {            while (index1 < length1 && Character.isWhitespace(ch1 = prefix.charAt(index1))) {                index1++;            }            while (index2 < length2 && Character.isWhitespace(ch2 = string.charAt(index2))) {                index2++;            }            if (index1 == length1 && index2 == length2) {                return true;            }            if (ch1 != ch2) {                return false;            }            index1++;            index2++;        }        if(index1 < length1 && index2 >= length2)            return false;        return true;    }    /**     * <p>Splits the provided text into an array, separator specified.     * This is an alternative to using StringTokenizer.</p>     *     * <p>The separator is not included in the returned String array.     * Adjacent separators are treated as one separator.</p>     *     * <p>A <code>null</code> input String returns <code>null</code>.</p>     *     * <pre>     * StringUtils.split(null, *)         = null     * StringUtils.split("", *)           = []     * StringUtils.split("a.b.c", '.')    = ["a", "b", "c"]     * StringUtils.split("a..b.c", '.')   = ["a", "b", "c"]     * StringUtils.split("a:b:c", '.')    = ["a:b:c"]     * StringUtils.split("a\tb\nc", null) = ["a", "b", "c"]     * StringUtils.split("a b c", ' ')    = ["a", "b", "c"]     * </pre>     *     * @param str  the String to parse, may be null     * @param separatorChar  the character used as the delimiter,     *  <code>null</code> splits on whitespace     * @return an array of parsed Strings, <code>null</code> if null String input     */    public static String[] split(String str, char separatorChar) {        if (str == null) {            return null;        }        int len = str.length();        if (len == 0) {            return EMPTY_STRING_ARRAY;        }        List list = new ArrayList();        int i = 0, start = 0;        boolean match = false;        while (i < len) {            if (str.charAt(i) == separatorChar) {                if (match) {                    list.add(str.substring(start, i));                    match = false;                }                start = ++i;                continue;            }            match = true;            i++;        }        if (match) {            list.add(str.substring(start, i));        }        return (String[]) list.toArray(new String[list.size()]);    }    // Empty checks    //-----------------------------------------------------------------------    /**     * <p>Checks if a String is empty ("") or null.</p>     *     * <pre>     * StringUtils.isEmpty(null)      = true     * StringUtils.isEmpty("")        = true     * StringUtils.isEmpty(" ")       = false     * StringUtils.isEmpty("bob")     = false     * StringUtils.isEmpty("  bob  ") = false     * </pre>     *     * <p>NOTE: This method changed in Lang version 2.0.     * It no longer trims the String.     * That functionality is available in isBlank().</p>     *     * @param str  the String to check, may be null     * @return <code>true</code> if the String is empty or null     */    public static boolean isEmpty(String str) {        return (str == null || str.length() == 0);    }        // Stripping    //-----------------------------------------------------------------------    /**     * <p>Strips whitespace from the start and end of a String.</p>     *     * <p>This removes whitespace. Whitespace is defined by      * {@link Character#isWhitespace(char)}.</p>     *     * <p>A <code>null</code> input String returns <code>null</code>.</p>     *     * <pre>     * StringUtils.strip(null)     = null     * StringUtils.strip("")       = ""     * StringUtils.strip("   ")    = ""     * StringUtils.strip("abc")    = "abc"     * StringUtils.strip("  abc")  = "abc"     * StringUtils.strip("abc  ")  = "abc"     * StringUtils.strip(" abc ")  = "abc"     * StringUtils.strip(" ab c ") = "ab c"     * </pre>     *     * @param str  the String to remove whitespace from, may be null     * @return the stripped String, <code>null</code> if null String input     */    public static String strip(String str) {        return strip(str, null);    }        /**     * <p>Strips any of a set of characters from the start and end of a String.     * This is similar to {@link String#trim()} but allows the characters     * to be stripped to be controlled.</p>     *     * <p>A <code>null</code> input String returns <code>null</code>.     * An empty string ("") input returns the empty string.</p>     *     * <p>If the stripChars String is <code>null</code>, whitespace is     * stripped as defined by {@link Character#isWhitespace(char)}.     * Alternatively use {@link #strip(String)}.</p>     *     * <pre>     * StringUtils.strip(null, *)          = null     * StringUtils.strip("", *)            = ""     * StringUtils.strip("abc", null)      = "abc"     * StringUtils.strip("  abc", null)    = "abc"     * StringUtils.strip("abc  ", null)    = "abc"     * StringUtils.strip(" abc ", null)    = "abc"     * StringUtils.strip("  abcyx", "xyz") = "  abc"     * </pre>     *     * @param str  the String to remove characters from, may be null     * @param stripChars  the characters to remove, null treated as whitespace     * @return the stripped String, <code>null</code> if null String input     */    public static String strip(String str, String stripChars) {        if (str == null) {            return str;        }        int len = str.length();        if (len == 0) {            return str;        }        int start = getStripStart(str, stripChars);        if (start == len) {            return "";        }        int end = getStripEnd(str, stripChars);        return (start == 0 && end == len) ? str : str.substring(start, end);    }    /**     * <p>Strips any of a set of characters from the start of a String.</p>     *     * <p>A <code>null</code> input String returns <code>null</code>.     * An empty string ("") input returns the empty string.</p>     *     * <p>If the stripChars String is <code>null</code>, whitespace is     * stripped as defined by {@link Character#isWhitespace(char)}.</p>     *     * <pre>     * StringUtils.stripStart(null, *)          = null     * StringUtils.stripStart("", *)            = ""     * StringUtils.stripStart("abc", "")        = "abc"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -