org.opengion.fukurou.util

## クラス StringUtil

- java.lang.Object
- - org.opengion.fukurou.util.StringUtil

-     public final class StringUtil
      extends Object

  StringUtil.java は、共通的に使用される String関連メソッドを集約した、クラスです。
  機能分類
    ユーティリティ
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールドと説明
    --- | ---
    `static Charset` | `DEFAULT_CHARSET` プラットフォーム依存のデフォルトの Charset です。

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `static String` | `array2csv(String[] array)` String型の配列から、カンマ(,)で連結されたString を作成します。
    `static String` | `array2line(String[] array, String separator)` String型の配列から、セパレーターで連結されたString を作成します。
    `static String` | `array2line(String[] array, String separator, int start)` String型の配列から、セパレーターで連結されたString を作成します。
    `static String` | `caseReplace(String target, String caseStr, boolean ignoreCase)` 引数の AA:01 BB:02 CC:03 … 形式の、元値:新値のｽﾍﾟｰｽ区切り文字列を元に、 元値を新値に置き換えます。
    `static String` | `code39(String value, boolean checkDigit)` CODE39 の 文字列を作成します。
    `static int` | `countChar(String value, char ch)` 文字列に含まれる、特定の文字の個数をカウントして返します。
    `static Map<String,String>` | `cssParse(String cssText)` 簡易CSS形式のフォーマットを、Mapにセットします。
    `static String[]` | `csv2Array(String csvData)` カンマ(,)で連結された String を、配列に分解して、その値を返します。
    `static String[]` | `csv2Array(String csvData, char separator)` 区切り文字で連結された String を、配列に分解して、その値を返します。
    `static String[]` | `csv2Array(String csvData, char separator, int len)` 区切り文字で連結された String を、配列に分解して、その値を返します。
    `static String[]` | `csv2ArrayExt(String csvData, int maxNo)` カンマ(,)、ハイフン(-)で連結された String を、配列に分解して、その値を返す処理のスペシャル版です。
    `static Integer[]` | `csv2ArrayExt2(String csvData, int maxNo)` Integer限定版です。
    `static String[]` | `csv2ArrayOnly(String csvData)` 区切り文字で連結された String を、配列に分解して、その値を返します。
    `static String` | `csvOutQuote(String str)` 文字列の前後のダブルクオートを取り外します。
    `static String` | `cut(String org, int cutBytes)` 引数から指定文字の分のバイト数で切った文字列を返します。
    `static String` | `cut(String org, int cutBytes, String enc)` 引数から指定文字の分のバイト数で切った文字列を返します。
    `static String` | `deleteChar(String value, char ch)` 所定のキャラクタコードを取り除いた文字列を作成します。
    `static String` | `deleteWhitespace(String data)` 引数から空白文字を削除して返します。
    `static Object[]` | `enume2Array(Enumeration<?> enume)` Enumerationから、オブジェクト配列データを返します。
    `static Object[]` | `enume2Array(Enumeration<?> enume, Object[] objs)` Enumerationから、オブジェクト配列データを返します。
    `static Color` | `getColorInstance(String value)` カラーキーワードより、Colorオブジェクトを作成します。
    `static String` | `getReplaceEscape(String value)` HTML のエスケープ記号(&#xZZZZ;)をUnicode文字列に戻します。
    `static String` | `getUnicodeEscape(String value)` Unicode文字列の値を HTML のエスケープ記号(&#xZZZZ;)に変換します。
    `static String` | `htmlFilter(String input)` HTML上のエスケープ文字を変換します。
    `static String` | `intFill(String str, int su_fill)` 整数のフォーム( 12 で、整数部 １２桁を表す)に合った新しい文字列を作り、それを返します。
    `static boolean` | `isNull(String in)` 引数 in が、null または、ゼロ文字列、またはすべて空白文字の場合は､true を返します。
    `static String` | `iterator2line(Iterator<?> ite, String separator)` Iteratorから、セパレーターで連結されたString を作成します。
    `static String` | `jsonFilter(String input)` JSON形式で出力する場合のためのエスケープ処理です。
    `static String` | `lTrim0(String in)` 文字列の前方のゼロ(０)を削除します。
    `static byte[]` | `makeByte(String value, String encode)` 指定の文字列をバイトコードに変換します。
    `static String` | `makeString(byte[] byteValue, int start, int length, String encode)` 内部で使われる byte[] から String 生成 メソッド
    `static Object` | `newInstance(String cls)` 識別id に応じた オブジェクトを作成します。
    `static Object` | `newInstance(String cls, ClassLoader loader)` 指定されたクラスローダを使って、識別id に応じた オブジェクトを作成します。
    `static String` | `numberFormat(String in, int minFraction)` 大きな浮動小数点数について、カンマ編集を行います。
    `static boolean` | `nval(String in, boolean def)` 引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
    `static int` | `nval(String in, int def)` 引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
    `static long` | `nval(String in, long def)` 引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
    `static String` | `nval(String in, String def)` 引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
    `static String` | `nval2(String in, String def)` 引数 in が、null、"_"、ゼロ文字列の場合は､デフォルト値 def を返します。
    `static String` | `nval2(String in, String def, String def2)` 引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
    `static String` | `ogStackTrace(Throwable th)` Throwable の printStackTrace() 結果の内、opengion に関する箇所だけを文字列に変換して返します。
    `static double` | `parseDouble(String value)` 文字列をdoubleに変換します。
    `static String` | `quoteFilter(String input)` JavaScript 等の引数でのクオート文字をASCII変換します。
    `static String` | `realFill(String str, double su_fill)` 小数点のフォームに合った新しい文字列を作り、文字列を返します。
    `static String` | `replace(String target, String from, String to)` ストリングの部分文字列を,別の文字列に置換えたストリングを返します。
    `static String` | `rTrim(String str)` 文字列の後ろのスペースを削除します。
    `static String[]` | `rTrims(String[] str)` 文字列配列の各要素の後ろのスペースを削除します。
    `static String` | `spanCut(String data)` 引数からspanタグを取り除いて返します。
    `static String` | `stringFill(String str, int su_fill, String encode)` 半角スペースで固定長(半角換算の数)に変換した文字列を返します。
    `static String` | `stringKFill(String str, int su_fill, String encode)` 全角スペースで固定長(半角換算の数)に変換した文字列を返します。
    `static String` | `stringStackTrace(Throwable th)` Throwable の printStackTrace() 結果を文字列に変換して返します。
    `static String` | `stringXFill(String str, int su_fill)` 半角スペースで固定長(半角換算の数)に変換した文字列を返します。
    `static String` | `toNumber(String str)` 文字列の後ろから、" .0" の文字を削除した数字型文字列を返します。
    `static String` | `urlAppend(String url1, String url2, String... urls)` 指定のURL文字列同士を連結させます。
    `static String` | `urlDecode(String value)` UTF-8 でURLエンコードされた文字列をデコードします。
    `static String` | `urlEncode(String value)` UTF-8 で、URLエンコードを行います。
    `static String` | `valueOf(Object obj)` Object 引数の文字列表現を返します。
    `static String` | `xmlFilter(String input)` XML上のエスケープ文字を変換します。

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### フィールドの詳細

    - #### DEFAULT_CHARSET

          public static final Charset DEFAULT_CHARSET

      プラットフォーム依存のデフォルトの Charset です。 プラットフォーム依存性を考慮する場合、エンコード指定で作成しておく事をお勧めします。
      変更履歴:

        5.5.2.6 (2012/05/25) findbugs対応

  - ### メソッドの詳細

    - #### urlEncode

          public static String urlEncode(String value)

      UTF-8 で、URLエンコードを行います。 このメソッドは、JDK1.4 以上でないと使用できません。
      パラメータ:
        `value` - エンコードする文字列
      戻り値:
        指定の文字コードでＵＲＬエンコードされた文字列

    - #### urlDecode

          public static String urlDecode(String value)

      UTF-8 でURLエンコードされた文字列をデコードします。 このメソッドは、JDK1.4 以上でないと使用できません。
      パラメータ:
        `value` - デコードする文字列
      戻り値:
        デコードされた文字列
      変更履歴:

        5.4.5.0 追加

    - #### rTrim

          public static String rTrim(String str)

      文字列の後ろのスペースを削除します。 String クラスの trim()メソッドは、文字列の両方のスペースを削除しますが、 この rTrim( String ) は、後ろの半角スペースのみ、詰めます。 注意：' ' (スペース文字) より小さい文字を切り取ります。
      パラメータ:
        `str` - 元の文字列
      戻り値:
        後ろの半角スペースを詰めた、新しい文字列

    - #### toNumber

          public static String toNumber(String str)

      文字列の後ろから、" .0" の文字を削除した数字型文字列を返します。 数字型文字列は、入力文字列の後ろの スペース、小数点、ゼロを削除します。 また、先頭が、"." で始まる場合は、"0" を追加します。 例: "123.00" ⇒ "123" , ".123" ⇒ "0.123"
      パラメータ:
        `str` - 元の文字列
      戻り値:
        数字文字列化された、新しい文字列
      変更履歴:

        3.8.8.1 (2007/01/10) 新規作成

    - #### lTrim0

          public static String lTrim0(String in)

      文字列の前方のゼロ(０)を削除します。 先頭の０を削除するまえに、trim して、スペースを削除しておきます。
      パラメータ:
        `in` - 元の文字列
      戻り値:
        前方のゼロ(０)を削除した、新しい文字列
      変更履歴:

        3.5.4.5 (2004/01/23) 新規追加

    - #### rTrims

          public static String[] rTrims(String[] str)

      文字列配列の各要素の後ろのスペースを削除します。 個々の配列要素に対して、rTrim( String str ) を適用します。 元の文字列配列に直接作用するのではなく、新しい文字列配列に 結果をコピーして返します。 ただし、元の文字列配列が、null か、length == 0 の場合は、 元の文字列配列(アドレス)を返します。 注意：' ' (スペース文字) より小さい文字を切り取ります。
      パラメータ:
        `str` - 元の文字列
      戻り値:
        後ろの半角スペースを詰めた、新しい文字列

    - #### csvOutQuote

          public static String csvOutQuote(String str)

      文字列の前後のダブルクオートを取り外します。 前後にダブルクオートが入っていなければ、そのままの文字列を返します。 前後に入っていない(片方のみなど)場合も、そのままの文字列を返します。
      パラメータ:
        `str` - 元の文字列
      戻り値:
        ダブルクオートを取り外した新しい文字列

    - #### makeString

          public static String makeString(byte[] byteValue,
                          int start,
                          int length,
                          String encode)

      内部で使われる byte[] から String 生成 メソッド
      パラメータ:
        `byteValue` - 変換するバイト列
        `start` - 変換開始アドレス
        `length` - 変換バイト数
        `encode` - 変換する文字エンコード
      戻り値:
        変換後文字列

    - #### makeByte

          public static byte[] makeByte(String value,
                        String encode)

      指定の文字列をバイトコードに変換します。 引数の文字列が null の場合は、return は、byte[0] を返します。
      パラメータ:
        `value` - 変換するストリング値
        `encode` - 変換する文字エンコード
      戻り値:
        変換後文字列

    - #### stringXFill

          public static String stringXFill(String str,
                           int su_fill)

      半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 内部にセットした文字列は、変化しません。
      パラメータ:
        `str` - Fill埋めする文字列
        `su_fill` - Fill埋めする文字列の長さ。(半角換算の数)
      戻り値:
        Fill埋めした新しいStringを返す。

    - #### stringFill

          public static String stringFill(String str,
                          int su_fill,
                          String encode)

      半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 内部にセットした文字列は、変化しません。
      パラメータ:
        `str` - Fill埋めする文字列
        `su_fill` - Fill埋めする文字列の長さ。(半角換算の数)
        `encode` - Fill埋めする文字列の文字エンコード
      戻り値:
        Fill埋めした新しいStringを返す。

    - #### intFill

          public static String intFill(String str,
                       int su_fill)

      整数のフォーム( 12 で、整数部 １２桁を表す)に合った新しい文字列を作り、それを返します。 実行できるのは、整数の String に対してのみです。 内部にセットした文字列は、変化しません。 String str = StringUtil.intFill( "123",10 ); 実行結果："0000000123"
      パラメータ:
        `str` - 整数の String
        `su_fill` - フォームを表す数字 ( 12 で、整数部 １２桁を表す)
      戻り値:
        整数のフォームに合った文字列

    - #### stringKFill

          public static String stringKFill(String str,
                           int su_fill,
                           String encode)

      全角スペースで固定長(半角換算の数)に変換した文字列を返します。
      パラメータ:
        `str` - Fill埋めする文字列
        `su_fill` - Fill埋めする文字列の長さ。(半角換算の数)
        `encode` - Fill埋めする文字列の文字エンコード
      戻り値:
        全角スペースでFill埋めした新しいStringを返す。

    - #### realFill

          public static String realFill(String str,
                        double su_fill)

      小数点のフォームに合った新しい文字列を作り、文字列を返します。 現在は、小数点が頭に付いたり、最後に付く場合の対応はしていません。 フォームは、12.4 で、 000000000010.1000 という形で、ピリオドを含みます。 // 半角 整数部 10 桁 小数部 ５桁で固定長の文字を得る。 String str = StringUtil.realFill( "123.45" ,10.5 ) ; 実行結果：0000000123.45000
      パラメータ:
        `str` - 整数の String
        `su_fill` - フォームを表す実数 ( 12.4 で、整数部 １２桁、小数部 ４桁 計１７桁 )
      戻り値:
        value 小数点のフォーム文字列

    - #### replace

          public static String replace(String target,
                       String from,
                       String to)

      ストリングの部分文字列を,別の文字列に置換えたストリングを返します。 例えば,リターンコードを< br />に置換えて,画面上に改行表示させるが可能です。
      パラメータ:
        `target` - 元の文字列
        `from` - 置換元部分文字列
        `to` - 置換先部分文字列
      戻り値:
        置換えた文字列
      変更履歴:

        5.0.0.1 (2009/08/15) 不要なオブジェクトの生成を抑制する。

    - #### caseReplace

          public static String caseReplace(String target,
                           String caseStr,
                           boolean ignoreCase)

      引数の AA:01 BB:02 CC:03 … 形式の、元値:新値のｽﾍﾟｰｽ区切り文字列を元に、 元値を新値に置き換えます。 これは、部分置換ではなく、完全一致で処理します。 caseStr が null や、マッチしなかった場合は、元の値を返します。 その場合、ignoreCase=true としている場合は、元の文字列 も大文字に変換されて返されます。 ゼロ文字列を元値や新値で使用することは可能ですが、スペースを使用することはできません。
      パラメータ:
        `target` - 元の文字列
        `caseStr` - 置換リスト(AA:01 BB:02 CC:03 … 形式)。null の場合は、比較しない。
        `ignoreCase` - true:大文字として比較 / false:そのまま比較
      戻り値:
        元の文字列を置き換えた結果。置換リストに存在しなければ、元の文字列を返す。
      変更履歴:

        5.7.2.3 (2014/01/31) 新規追加

    - #### array2csv

          public static String array2csv(String[] array)

      String型の配列から、カンマ(,)で連結されたString を作成します。 これは，配列を表示用に変換する為のものです。 array2line( array, ",", 0 ); と同等です。
      パラメータ:
        `array` - 元の文字列配列
      戻り値:
        一列に変換した文字列(引数がnullの場合は、長さ０の文字列を返す)

    - #### array2line

          public static String array2line(String[] array,
                          String separator)

      String型の配列から、セパレーターで連結されたString を作成します。 これは，配列を表示用に変換する為のものです。
      パラメータ:
        `array` - 元の文字列配列
        `separator` - 区切り記号
      戻り値:
        一列に変換した文字列(引数がnullの場合は、長さ０の文字列を返す)

    - #### array2line

          public static String array2line(String[] array,
                          String separator,
                          int start)

      String型の配列から、セパレーターで連結されたString を作成します。 これは，配列を表示用に変換する為のものです。
      パラメータ:
        `array` - 元の文字列配列
        `separator` - 区切り記号
        `start` - 配列の連結開始アドレス
      戻り値:
        一列に変換した文字列(引数がnullの場合は、長さ０の文字列を返す)

    - #### enume2Array

          public static Object[] enume2Array(Enumeration<?> enume)

      Enumerationから、オブジェクト配列データを返します。 これは，Enumerationを表示用に変換する為のものです。
      パラメータ:
        `enume` - 元のEnumeration
      戻り値:
        オブジェクト配列

    - #### enume2Array

          public static Object[] enume2Array(Enumeration<?> enume,
                             Object[] objs)

      Enumerationから、オブジェクト配列データを返します。 これは，Enumerationを表示用に変換する為のものです。
      パラメータ:
        `enume` - 元のEnumeration
        `objs` - - 配列が十分な大きさを持つ場合は、Vector の要素が格納される配列。 そうでない場合は、要素を格納するために同じ実行時の型の新しい配列が割り当てられる
      戻り値:
        オブジェクト配列

    - #### iterator2line

          public static String iterator2line(Iterator<?> ite,
                             String separator)

      Iteratorから、セパレーターで連結されたString を作成します。 これは，Enumerationを表示用に変換する為のものです。
      パラメータ:
        `ite` - 元のIterator
        `separator` - 区切り記号
      戻り値:
        一列に変換した文字列

    - #### csv2Array

          public static String[] csv2Array(String csvData)

      カンマ(,)で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 要素が空の場合は、必ずカンマの間にスペースを入れて記述してください。 分割後の文字列の前後のスペースは、削除されます。
      パラメータ:
        `csvData` - 元のデータ
      戻り値:
        文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)

    - #### csv2Array

          public static String[] csv2Array(String csvData,
                           char separator)

      区切り文字で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 連続した区切り文字は、１文字に分割します。 分割後の文字列の前後のスペースは、削除されます。
      パラメータ:
        `csvData` - 元のデータ
        `separator` - 区切り文字
      戻り値:
        文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)

    - #### csv2Array

          public static String[] csv2Array(String csvData,
                           char separator,
                           int len)

      区切り文字で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 連続した区切り文字は、１文字に分割します。 分割後の文字列の前後のスペースは、削除されます。 第３の引数は、リターンする配列の個数を指定します。ただし、第一引数がNULLや、ゼロ文字列 などの不正な情報の場合は、通常と同じく 長さゼロの配列を返します。 len=0 を指定すると分解したデータの個数分の配列を作成します。指定の長さが短い場合は、 そこまで分のみ取り込みます。指定の長さが長い場合は、余分に配列を作成します。 セットされる値は、"" です。
      パラメータ:
        `csvData` - 元のデータ
        `separator` - 区切り文字
        `len` - 指定の長さの配列で返します。
      戻り値:
        文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
      変更履歴:

        3.8.5.1 (2006/05/08) 設定配列の数を指定できるように変更
        3.8.8.2 (2007/01/26) 分割後の値の前後のスペースは削除します。

    - #### csv2ArrayOnly

          public static String[] csv2ArrayOnly(String csvData)

      区切り文字で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 csv2Array と異なり、連続した区切り文字は、分割せずにトークンのみ切り出します。 トークンは、カンマ(,)のみで区切り、その後 trim() により 前後のスペースを削除します。
      パラメータ:
        `csvData` - 元のデータ
      戻り値:
        文字列配列

    - #### csv2ArrayExt

          public static String[] csv2ArrayExt(String csvData,
                              int maxNo)

      カンマ(,)、ハイフン(-)で連結された String を、配列に分解して、その値を返す処理のスペシャル版です。 0,1,3,5-8,10-* などの数字文字列から、必要な数字をピックアップした文字配列を返します。 引数の maxNo は、"*" が指定された場合の、最大の数値です。 よって、"*" は、単独(１文字)では、0-maxNo を表し、N-* では、N-maxNo を意味します。 カンマ区切りで指定される値は、基本的に数字で、重複(1,1,2,2)、逆転(3,2,1)で指定できます。 5-3 と指定した場合は、5,4,3 に分解されます。逆順に登録されます。 重複削除、昇順並べ替え等が、必要な場合は、取得後の配列を操作してください。
      パラメータ:
        `csvData` - 0,1,3,5-8,10-* などのCSV-ハイフン文字列
        `maxNo` - "*" が指定された場合の、最大数
      戻り値:
        文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
      変更履歴:

        5.5.7.2 (2012/10/09) 新規追加
        5.9.12.4 (2016/09/30) アルファベットの対応を廃止し、数字配列のみサポートします。

    - #### csv2ArrayExt2

          public static Integer[] csv2ArrayExt2(String csvData,
                                int maxNo)

      Integer限定版です。 V6では返り値の型変更をしていますが、V5では一旦別名にしておきます。
      パラメータ:
        `csvData` - 0,1,3,5-8,10-* などのCSV-ハイフン文字列
        `maxNo` - "*" が指定された場合の、最大数
      戻り値:
        文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
      変更履歴:

        5.9.0.0 (2015/09/04) 新規追加
        5.9.12.4 (2016/09/30) アルファベットの対応を廃止し、数字配列のみサポートします。

    - #### valueOf

          public static String valueOf(Object obj)

      Object 引数の文字列表現を返します。 これは，String.valueOf とほぼ同じ動作をしますが、引数が null の場合に、 "null" という文字列を返すのではなく、なにもない文字列 "" を返します。
      パラメータ:
        `obj` - 文字列表現すべき元のオブジェクト
      戻り値:
        引数が null の場合は、"" に等しい文字列。そうでない場合は、obj.toString() の値

    - #### htmlFilter

          public static String htmlFilter(String input)

      HTML上のエスケープ文字を変換します。 HTMLで表示する場合にきちんとエスケープ文字に変換しておかないと Script を実行されたり、不要なHTMLコマンドを潜り込まされたりするため、 セキュリティーホールになる可能性があるので、注意してください。
      パラメータ:
        `input` - HTMLエスケープ前の文字列
      戻り値:
        エスケープ文字に変換後の文字列

    - #### xmlFilter

          public static String xmlFilter(String input)

      XML上のエスケープ文字を変換します。 HTMLとの違いはアポストロフィです。
      パラメータ:
        `input` - XMLエスケープ前の文字列
      戻り値:
        エスケープ文字に変換後の文字列
      変更履歴:

        5.8.2.2 (2014/12/19) 新規作成

    - #### quoteFilter

          public static String quoteFilter(String input)

      JavaScript 等の引数でのクオート文字をASCII変換します。 JavaScript の引数の値に、ダブルクオート(")、シングルクオート(')が 含まれると、文字列を表す為に前後に指定しているクオートと混乱し、 データを表現できないケースがあります。その場合には、クオート文字を ASCII文字に置き換える事で、指定の文字を渡すことが可能になります。 ここでは、引数文字列に、ダブルクオート(")、シングルクオート(')が、 含まれると、それぞれ、ASCII コード(￥ｘ２２、￥ｘ２７)に置き換えます。 なお、null は、ゼロ文字列に変換して返します。
      パラメータ:
        `input` - 入力文字列
      戻り値:
        クオート文字をASCII文字に置き換えた文字列

    - #### jsonFilter

          public static String jsonFilter(String input)

      JSON形式で出力する場合のためのエスケープ処理です。
      パラメータ:
        `input` - XMLエスケープ前の文字列
      戻り値:
        エスケープ文字に変換後の文字列
      変更履歴:

        5.9.6.4(2016/03/25) 新規作成

    - #### deleteChar

          public static String deleteChar(String value,
                          char ch)

      所定のキャラクタコードを取り除いた文字列を作成します。 実現したい機能は、String#replace( 'x','' ) 的な表現です。 つまり、指定のキャラクタを取り除きたいのですが、上記コマンドでは、 コンパイル時にエラーが発生します。 取り除きたいキャラクタコードが存在しない場合は、指定の文字列を そのまま返します。
      パラメータ:
        `value` - 処理対象の文字列
        `ch` - 取り除きたいキャラクタ
      戻り値:
        処理後の文字列

    - #### countChar

          public static int countChar(String value,
                      char ch)

      文字列に含まれる、特定の文字の個数をカウントして返します。
      パラメータ:
        `value` - 処理対象の文字列
        `ch` - カウントする文字
      戻り値:
        カウント数
      変更履歴:

        5.2.0.0 (2010/09/01)

    - #### code39

          public static String code39(String value,
                      boolean checkDigit)

      CODE39 の 文字列を作成します。 CODE39 は、『0～9, A～Z,-,・,　,$,/,+,%』のコードが使用できる バーコードの体系です。通常 * で始まり * で終了します。 また、チェックデジット に、モジュラス43 が使われます。 ここでは、指定の文字列の前後に、* を付与し、必要であれば チェックデジットも付与します。 指定の入力文字列には、* を付けないでください。
      パラメータ:
        `value` - 処理対象の文字列
        `checkDigit` - チェックデジットの付与(true:付ける/false:付けない)
      戻り値:
        処理後の文字列

    - #### nval

          public static String nval(String in,
                    String def)

      引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。 もちろん、in も def も null の場合は､null を返します。
      パラメータ:
        `in` - 基準となる文字列
        `def` - デフォルト文字列
      戻り値:
        ( in != null ) ? in : def ;

    - #### nval

          public static int nval(String in,
                 int def)

      引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
      パラメータ:
        `in` - 基準となる文字列
        `def` - デフォルト数字
      戻り値:
        引数 in を変換した数字。変換できない場合は デフォルト値 def

    - #### nval

          public static long nval(String in,
                  long def)

      引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
      パラメータ:
        `in` - 基準となる文字列
        `def` - デフォルト数字
      戻り値:
        引数 in を変換した数字。変換できない場合は デフォルト値 def

    - #### nval

          public static boolean nval(String in,
                     boolean def)

      引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。 通常は、"true" または、 "TRUE" 文字列を、論理値の true に変換します。 ただし、文字列長が 1文字の場合のみ、"0" 以外を true に変換します。
      パラメータ:
        `in` - 基準となる文字列
        `def` - デフォルト論理値
      戻り値:
        引数 in を変換した論理値。変換できない場合は デフォルト値 def

    - #### nval2

          public static String nval2(String in,
                     String def)

      引数 in が、null、"_"、ゼロ文字列の場合は､デフォルト値 def を返します。 さらに、メモリ領域を節約する為、intern() の結果を返します。
      パラメータ:
        `in` - 基準となる文字列
        `def` - デフォルト文字列
      戻り値:
        null、"_"、ゼロ文字列の場合は、デフォルト文字列を、そうでなければ、入力文字を返す。
      変更履歴:

        5.2.2.0 (2010/11/01) "_" の取り扱い変更

    - #### nval2

          public static String nval2(String in,
                     String def,
                     String def2)

      引数 in が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。 ただし、NULL代替文字(_)は デフォルト値 def2 に置き換えます。 さらに、メモリ領域を節約する為、intern() の結果を返します。
      パラメータ:
        `in` - 基準となる文字列
        `def` - デフォルト文字列
        `def2` - NULL代替文字(_)の場合のデフォルト文字列
      戻り値:
        NULL文字列関係の場合は、ゼロ文字列を、そうでなければ、入力文字を返す。
      変更履歴:

        5.2.2.0 (2010/11/01) "_" の取り扱い変更

    - #### isNull

          public static boolean isNull(String in)

      引数 in が、null または、ゼロ文字列、またはすべて空白文字の場合は､true を返します。 それ以外は false を返します。 注意は、オールスペースやタブ文字、改行文字も true になります。
      パラメータ:
        `in` - 基準となる文字列
      戻り値:
        NULL文字列関係の場合は、true を、そうでなければ、false を返す。

    - #### stringStackTrace

          public static String stringStackTrace(Throwable th)

      Throwable の printStackTrace() 結果を文字列に変換して返します。
      パラメータ:
        `th` - printStackTraceすべき元のThrowableオブジェクト
      戻り値:
        Throwableの詳細メッセージ( th.printStackTrace() )

    - #### ogStackTrace

          public static String ogStackTrace(Throwable th)

      Throwable の printStackTrace() 結果の内、opengion に関する箇所だけを文字列に変換して返します。 printStackTrace() すると、膨大なメッセージが表示されるため、その中の、"org.opengion" を 含む箇所だけを、抜粋します。
      パラメータ:
        `th` - 元のThrowableオブジェクト
      戻り値:
        Throwableの詳細メッセージ( StackTraceElement の抜粋 )
      変更履歴:

        5.7.2.0 (2014/01/10) 新規作成

    - #### numberFormat

          public static String numberFormat(String in,
                            int minFraction)

      大きな浮動小数点数について、カンマ編集を行います。 このメソッドでは、1.23 E12 などの数字は扱いません。通常の 数字とピリオドで構成された文字列のみ、変換対象になります。 (ただし、不正な文字列を与えてもエラーチェックはしていません。) minFraction には、少数点部に与える固定値を指定します。入力文字列が その桁数より少ない場合は、０埋めします。 多い場合でもカットしません。 minFraction が 0 の場合は、少数点は付きません。 ".12" などの少数点は、必ず先頭に 0 が付きます。 入力文字列が null か、ゼロ文字列時は、そのまま入力データを返します。

                  DecimalFormat format = new DecimalFormat( "#,##0.00########" );
                  double dd = Double.parseDouble( val );
                  return format.format( dd );

      に対して、minFraction分の少数以下のゼロの指定と、inに ',' が 含まれた処理を追加した感じになります。
      パラメータ:
        `in` - 変換元の文字列
        `minFraction` - 変換時の少数点以下の固定桁数
      戻り値:
        カンマ編集後の数字型文字列
      変更履歴:

        4.0.0.0 (2007/10/26) 空白のトリム処理を追加

    - #### newInstance

          public static Object newInstance(String cls)

      識別id に応じた オブジェクトを作成します。 作成するには、デフォルトコンストラクターが必要です。
      パラメータ:
        `cls` - 作成するクラスのフルネーム
      戻り値:
        オブジェクト
      例外:
        `RuntimeException` - 何らかのエラーが発生した場合

    - #### newInstance

          public static Object newInstance(String cls,
                           ClassLoader loader)

      指定されたクラスローダを使って、識別id に応じた オブジェクトを作成します。 作成するには、デフォルトコンストラクターが必要です。 initialize パラメータは true 相当(それまでに初期化されていない場合だけ初期化)です。
      パラメータ:
        `cls` - 作成するクラスのフルネーム
        `loader` - 作成するクラスのクラスローダ
      戻り値:
        オブジェクト
      例外:
        `RuntimeException` - 何らかのエラーが発生した場合

    - #### urlAppend

          public static String urlAppend(String url1,
                         String url2,
                         String... urls)

      指定のURL文字列同士を連結させます。 そのとき、後方URLが、絶対パスの場合は、連結せず 後方URLを返します。 第２引数以降は、絶対パス判定をせず直前のURLの末尾判定のみで連結します。 絶対パスかどうかは、通常のファイル属性と同様に、先頭が、'/' (UNIX)または、 ２文字目が、":" (Windows)の場合、または、先頭が "\" (ネットワークパス)で 始まる場合で判断します。 連結時に、前方URLの末尾に "/" を付加します。 処理の互換性確保のため、第３引数の可変長引数を追加しています。
      パラメータ:
        `url1` - 先頭URL文字列
        `url2` - 後方URL文字列(絶対パスの場合は、返り値)
        `urls` - 後方URL文字列
      戻り値:
        URL文字列同士の連結結果 url1 + url2(url2が絶対パスの場合は、url2から連結開始)
      変更履歴:

        5.0.0.1 (2009/08/15) 不要なオブジェクトの生成を抑制する。
        5.6.5.2 (2013/06/21) 第３引数を可変長引数に変更

    - #### getUnicodeEscape

          public static String getUnicodeEscape(String value)

      Unicode文字列の値を HTML のエスケープ記号(&#xZZZZ;)に変換します。 SJIS(JA16SJIS) で作成されたデータベースに、(NVARCHAR2)を使用して中国語等を登録するのは 非常に複雑でかつ、リスクが大きい処理になります。 ORACLE殿でも、自信を持っては勧められない機能とのコメントを頂いています。 そこで、HTMLでのエスケープ文字を使用して、Unicodeを文字列化して登録する為の DBType として、新規に作成します。 ここでは、入力文字を、キャラクタ(char)型に分解し、(&#xZZZZ;)に変換していきます。 よって、通常に１文字(Shift-JISで２Byte,UTF-8で３Byte)が、８Byteになります。 この変換された文字列を、HTML上でそのまま取り出すと、元のUnicode文字に戻る為、 通常のShift-JISでは、扱えない文字(中国語など)でも表示可能になります。 ここでは、2バイト文字のみ、変換しています。
      パラメータ:
        `value` - 変換前の文字列
      戻り値:
        HTMLのエスケープ記号(&#xZZZZ;)

    - #### getReplaceEscape

          public static String getReplaceEscape(String value)

      HTML のエスケープ記号(&#xZZZZ;)をUnicode文字列に戻します。 HTMLでのエスケープ文字を使用して登録された文字を、Unicodeに戻します。 (&#xZZZZ;)の８Byteを、もとのキャラクタコードに戻し、合成します。 ここでは、通常の文字列に混在したエスケープ文字も戻せるようにします。
      パラメータ:
        `value` - HTMLのエスケープ記号(&#xZZZZ;)を含む文字列
      戻り値:
        通常のUnicode文字列
      変更履歴:

        5.9.5.3 (2016/02/26) 無限ループ対応

    - #### parseDouble

          public static double parseDouble(String value)

      文字列をdoubleに変換します。 これは、Double.parseDouble( value ) と、ほぼ同じ動作を行います。 内部的には、引数の カンマ(,) を削除した文字列を、Double.parseDouble( value ) に渡します。 また、引数が、null,ゼロ文字列,'_' の時には、0.0 を返します。
      パラメータ:
        `value` - doubleに変換する元の文字列
      戻り値:
        変換後のdouble数値

    - #### getColorInstance

          public static Color getColorInstance(String value)

      カラーキーワードより、Colorオブジェクトを作成します。 指定文字列は、java.awt.Color クラスのstatic フィールド名で指定します。 BLACK , BLUE , CYAN , DARK_GRAY , GRAY , GREEN , LIGHT_GRAY , MAGENTA , ORANGE , PINK , RED , WHITE , YELLOW , PURPLE , TRANSPARENT(透明) が指定できます。 また、先頭に、# を付ける事で、#XXXXXX形式の16bitRGB表記 でも指定可能です。 static フィールド名のMapを管理していますが、存在しない場合は、エラーになります。
      パラメータ:
        `value` - java.awt.Color フィールドを示す文字列または、#XXXXXX形式の16bitRGB表記
      戻り値:
        Colorオブジェクト
      関連項目:
        `Color.BLACK`
      変更履歴:

        3.8.9.1 (2007/06/29) 新規作成
        4.1.1.0 (2008/02/04) CLR_MAP に存在しない場合はエラーにします。

    - #### spanCut

          public static String spanCut(String data)

      引数からspanタグを取り除いて返します。 引数が、<span ･･･>XXXX</span>形式の場合、XXXX のみ出力します。
      パラメータ:
        `data` - 元のString文字列
      戻り値:
        spanタグが取り除かれた文字列
      変更履歴:

        4.3.4.3 (2008/12/22) TableWriterで利用していたものを移動
        5.9.11.1 (2016/08/10) spanだけでなく、pre,textareaも除外するようにしておく

    - #### cssParse

          public static Map<String,String> cssParse(String cssText)

      簡易CSS形式のフォーマットを、Mapにセットします。 簡易CSS形式とは、セレクタのない、{ プロパティ1 : 値1 ; ・・・ } 形式とします。 これを、プロパティ1 と 値1 のMap にセットする処理を行います。 コメントは、削除されます。また、同一プロパティが記述されている場合は、後処理を採用します。 なお、入力テキストが、null か、{…} が存在しない場合は、null を返します。
      パラメータ:
        `cssText` - 簡易CSS形式のフォーマット文字列
      戻り値:
        パース結果のMap
      変更履歴:

        5.6.5.2 (2013/06/21) 新規追加

    - #### deleteWhitespace

          public static String deleteWhitespace(String data)

      引数から空白文字を削除して返します。
      パラメータ:
        `data` - 元のString文字列
      戻り値:
        空白文字が取り除かれた文字列
      変更履歴:

        5.6.9.4 (2013/10/31) TableWriterで利用していたものを移動

    - #### cut

          public static String cut(String org,
                   int cutBytes,
                   String enc)

      引数から指定文字の分のバイト数で切った文字列を返します。 文字列のバイト数は指定のエンコードでカウントします。 （文字の途中で切れる事はありません）
      パラメータ:
        `org` - 元のString文字列
        `cutBytes` - 切るバイト数
        `enc` - 文字列のエンコード
      戻り値:
        バイト数で切った文字列
      変更履歴:

        5.9.1.3 (2015/10/30) 新規作成

    - #### cut

          public static String cut(String org,
                   int cutBytes)

      引数から指定文字の分のバイト数で切った文字列を返します。 バイト数のカウントはUTF-8として行います。
      パラメータ:
        `org` - 元のString文字列
        `cutBytes` - 切るバイト数
      戻り値:
        バイト数で切った文字列
      変更履歴:

        5.9.1.3 (2015/10/30) 新規作成

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.