|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.util.StringUtil
public class StringUtil
文字列操作を行うユーティリティクラス。
半角・全角変換、HTML特殊文字エスケープ、SQL文LIKE句 エスケープ等、文字列操作に必要な機能を提供する。
フィールドの概要 | |
---|---|
static String |
LIKE_ESC_CHAR
LIKE述語のパターン文字列で用いるエスケープ文字。 |
static String |
LINE_SEP
実行環境のOSで用いられる改行コードを取得する。 |
コンストラクタの概要 | |
---|---|
StringUtil()
|
メソッドの概要 | |
---|---|
static String |
capitalizeInitial(String str)
指定された文字列の頭文字を大文字にする。 |
static String |
dump(Map<?,?> map)
引数のマップのダンプを取得する。 |
static String |
filter(String str)
HTMLメタ文字列変換。 |
static String |
getArraysStr(Object[] arrayObj)
ダンプ対象の値オブジェクトが配列形式の場合、 配列要素でなくなるまで繰り返し値を取得する。 |
static int |
getByteLength(String value,
String encoding)
指定された文字列のバイト列長を取得する。 |
static String |
getExtension(String name)
指定された文字列から末尾の拡張子を取得する。 |
static String |
hankakuToZenkaku(String value)
半角文字列を全角文字列に変換する。 |
static boolean |
isWhitespace(char c)
指定された文字が半角スペースかどうかを判別する。 |
static boolean |
isZenHankakuSpace(char c)
指定された文字が全角または半角スペースかどうかを判別する。 |
static String |
ltrim(String str)
文字列の左側のホワイトスペースを削除する。 |
static String |
ltrimZ(String str)
文字列の左側の全角および半角スペースを削除する。 |
static String[] |
parseCSV(String csvString)
CSV形式の文字列を文字列の配列に変換する。 |
static String[] |
parseCSV(String csvString,
String escapeString)
CSV形式の文字列を文字列の配列に変換する。 |
static String |
rtrim(String str)
文字列の右側のホワイトスペースを削除する。 |
static String |
rtrimZ(String str)
文字列の右側の全角および半角スペースを削除する。 |
static String |
toHexString(byte[] byteArray,
String delim)
バイト配列を16進文字列に変換する。 |
static String |
toLikeCondition(String condition)
検索条件文字列をLIKE述語のパターン文字列に変換する。 |
static String |
toShortClassName(String longClassName)
指定されたクラス名から短縮クラス名(パッケージ修飾なし)を取得する。 |
static String |
trim(String str)
文字列の両側のホワイトスペースを削除する。 |
static String |
trimZ(String str)
文字列の両側の全角および半角スペースを削除する。 |
static String |
zenkakuToHankaku(String value)
全角文字列を半角文字列に変換する。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final String LINE_SEP
public static final String LIKE_ESC_CHAR
コンストラクタの詳細 |
---|
public StringUtil()
メソッドの詳細 |
---|
public static boolean isWhitespace(char c)
c
- 対象文字
public static boolean isZenHankakuSpace(char c)
c
- 対象文字
public static String rtrim(String str)
例えば Oracle の場合、 CHAR 型の列の値を ResultSet.getString() で取得すると、定義長までスペースで パディングされた文字列が返される。一方、 VARCHAR2 の場合は 右端のスペースはトリミングされるため、そのままでは両者を正しく文字列 比較することが出来ない。また、画面入力された文字列の右端にスペースが 含まれている場合に、これを VARCHAR2 の列に挿入すると スペースもそのまま格納されるが、右端のスペースをトリミングする動作が 妥当な場合も多い。このようなときにこのメソッドを利用する。
※ 全角スペースはトリミングされない。
str
- 変換前の文字列
public static String ltrim(String str)
str
- 変換前の文字列
public static String trim(String str)
str
- 変換前の文字列
public static String rtrimZ(String str)
例えば Oracle の場合、 CHAR 型の列の値を ResultSet.getString() で取得すると、定義長までスペースで パディングされた文字列が返される。一方、 VARCHAR2 の場合は 右端のスペースはトリミングされるため、そのままでは両者を正しく文字列 比較することが出来ない。また、画面入力された文字列の右端にスペースが 含まれている場合に、これを VARCHAR2 の列に挿入すると スペースもそのまま格納されるが、右端のスペースをトリミングする動作が 妥当な場合も多い。このようなときにこのメソッドを利用する。
str
- 変換前の文字列
public static String ltrimZ(String str)
str
- 変換前の文字列
public static String trimZ(String str)
str
- 変換前の文字列
public static String toShortClassName(String longClassName)
longClassName
- クラス名
public static String getExtension(String name)
name
- 拡張子つきの名前
public static String toHexString(byte[] byteArray, String delim)
byteArray
- バイト配列delim
- デリミタ
public static String capitalizeInitial(String str)
str
- 変換前の文字列
public static String[] parseCSV(String csvString)
文字列の先頭がカンマで 始まっていたり、文字列の最後がカンマで終わっている場合には、 それぞれ変換結果の配列の最初か、あるいは最後の要素が空文字列となるように 変換される。
カンマが連続している場合には、空文字列として変換される。
csvString が null だった場合には、 要素数0の配列に変換される。
csvString
- CSV形式の文字列
public static String[] parseCSV(String csvString, String escapeString)
文字列の先頭がカンマで 始まっていたり、文字列の最後がカンマで終わっている場合には、 それぞれ変換結果の配列の最初か、あるいは最後の要素が空文字列となるように 変換される。
カンマが連続している場合には、空文字列として変換される。
csvString が null だった場合には、
要素数0の配列に変換される。
エスケープ文字列に設定された文字列の次にあるカンマは区切り文字
としては認識しない。
エスケープ文字列の後のエスケープ文字列はエスケープ文字として
認識しない。
csvString
- CSV形式の文字列escapeString
- エスケープ文字列
public static String dump(Map<?,?> map)
map
- 入出力マップ
public static String getArraysStr(Object[] arrayObj)
arrayObj
- 配列型オブジェクト
public static String hankakuToZenkaku(String value)
カナ文字に濁点または半濁点が続く場合は、可能な限り1文字に変換する。
(例) 'カ' + '゙' => 'ガ'
またこの変換処理では以下の全角文字も変換先文字とされる。
value
- 半角文字列
public static String zenkakuToHankaku(String value)
濁点または半濁点を持つカナ文字は、2文字に分解される。
(例) 'ガ' => 'カ' + '゙'
またこの変換処理では以下の全角文字も変換元文字と受け付ける。
value
- 全角文字列
public static String filter(String str)
"<"、">"、"&"、"""、"'"といった、HTML中に そのまま出力すると問題がある文字を "<"、">"、"&"、"""、"'" に変換する。
nullが渡された場合はnullを返す。
str
- 変換する文字列
public static String toLikeCondition(String condition)
検索条件文字列をLIKE述語のパターン文字列に変換する。
変換ルールは以下の通り。
LIKE_ESC_CHAR
を LIKE_ESC_CHAR
で
エスケープする。LIKE_ESC_CHAR
でエスケープする。conditionがnullの場合はnullを返す。
condition
- 検索条件文字列
public static int getByteLength(String value, String encoding) throws UnsupportedEncodingException
value
- バイト列長を取得する対象の文字列encoding
- 文字エンコーディング
UnsupportedEncodingException
- サポートされていない
エンコーディングを指定したとき発生する例外。
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |