クラス情報
パッケージ: com.onepg.util
クラス名: ValUtil
説明
列挙型一覧
CharSet
public enum CharSet
定数
UTF8SJISMS932
LineSep
public enum LineSep
定数
LFCRCRLF
CsvType
public enum CsvType
- CSVの各項目へのダブルクォーテーション付加方法と改行コードの扱いを定義する。
- CSVタイプが改行有りの場合、かつ値内に改行コードを含む場合、その改行コード(CRLF・CR)は LF に統一する。
- CSVタイプが改行無し(改行有り以外)の場合、かつ値内に改行コードを含む場合、その改行コード(CRLF・CR・LF)は半角スペースに変換する。
定数
NO_DQDQ_ALLDQ_STDDQ_ALL_LFDQ_STD_LF
定数・変数一覧
BLANK
public String BLANK
ON
public String ON
OFF
public String OFF
LF
public String LF
CR
public String CR
CRLF
public String CRLF
UTF8
public String UTF8
SJIS
public String SJIS
MS932
public String MS932
JSON_NULL
public String JSON_NULL
null 文字.
メソッド一覧
isNull
public boolean isNull(Object obj)
null チェック.Objectがnullかチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
obj |
Object |
チェック対象 |
戻り値
boolean - null の場合は true
isBlank
public boolean isBlank(String value)
- 半角スペースのみで構成/ゼロバイト文字列/
nullのいずれの場合もブランクと判断する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
戻り値
boolean - ブランクの場合は true
isEmpty
public boolean isEmpty(Object[] values)
- 配列が長さゼロ 又は
nullかチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
values |
Object[] |
チェック対象 |
戻り値
boolean - 空の場合は true
isEmpty
public boolean isEmpty(List<?> list)
- リストが長さゼロ 又は
nullかチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
list |
List<?> |
チェック対象 |
戻り値
boolean - 空の場合は true
isEmpty
public boolean isEmpty(Map<?, ?> map)
- マップが長さゼロ 又は
nullかチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
map |
Map<?, ?> |
チェック対象 |
戻り値
boolean - 空の場合は true
isValidIoKey
public boolean isValidIoKey(String key)
- 入出力マップのキーとして使用できる文字かのチェックを行う。
- 許可する文字は下記のとおり。
- 英字小文字
- 数字
- アンダースコア
- ハイフン
- ドット
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
key |
String |
チェック対象キー |
戻り値
boolean - 無効な文字を含む場合は false
validateIoKey
public void validateIoKey(String key)
- 入出力マップのキーとして使用できる文字かのチェックを行う。
- 許可する文字は下記のとおり。
- 英字小文字
- 数字
- アンダースコア
- ハイフン
- ドット
- 無効な文字を含む場合は
RuntimeExceptionをスローする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
key |
String |
チェック対象キー |
nvl
public String nvl(String value)
null ブランク置換.- 文字列が
nullの場合はブランクを返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
戻り値
String - null の場合は ブランク
nvl
public String nvl(String value, String nullDefault)
null 置換.- 文字列が
nullの場合は置き換え文字を返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
nullDefault |
String |
置き換え文字 |
戻り値
String - null の場合は 置き換え文字
nvl
public BigDecimal nvl(BigDecimal value)
null ゼロ置換.- 数値が
nullの場合はゼロを返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
BigDecimal |
チェック対象 |
戻り値
BigDecimal - null の場合は ゼロ
bvl
public String bvl(String value, String blankDefault)
- 文字列がブランクの場合は置き換え文字を返す。
- ブランク判断には
#isBlank(String)を使用。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
blankDefault |
String |
置き換え文字 |
戻り値
String - ブランクの場合は置き換え文字
join
public String join(String joint, String... values)
- 配列が空の場合はブランクを返す。
nullはブランクとして連結される。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
joint |
String |
つなぎ目文字 |
values |
String... |
連結対象 |
戻り値
String - 連結した文字列
join
public String join(String joint, List<String> list)
- リストが空の場合はブランクを返す。
nullはブランクとして連結される。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
joint |
String |
つなぎ目文字 |
list |
List<String> |
連結対象 |
戻り値
String - 連結した文字列
join
public String join(String joint, Set<String> list)
- リストが空の場合はブランクを返す。
nullはブランクとして連結される。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
joint |
String |
つなぎ目文字 |
list |
Set<String> |
連結対象 |
戻り値
String - 連結した文字列
split
public String[] split(String value, String sep)
- 文字が
nullの場合は長さゼロの配列を返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
分割対象文字 |
sep |
String |
分割文字 |
戻り値
String[] - 分割した文字列配列
splitReg
public String[] splitReg(String value, String sep)
- 文字が
nullの場合は長さゼロの配列を返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
分割対象文字 |
sep |
String |
分割文字(正規表現) |
戻り値
String[] - 分割した文字列配列
splitReg
public String[] splitReg(String value, String sep, int limitLength)
- 文字が
nullの場合は長さゼロの配列を返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
分割対象文字 |
sep |
String |
分割文字(正規表現) |
limitLength |
int |
最大長さ |
戻り値
String[] - 分割した文字列配列
equals
public boolean equals(String str1, String str2)
nullはゼロバイトブランク文字として比較する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
str1 |
String |
比較対象その1 |
str2 |
String |
比較対象その2 |
戻り値
boolean - 同値の場合は true
equals
public boolean equals(BigDecimal dec1, BigDecimal dec2)
nullはゼロとして比較する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
dec1 |
BigDecimal |
比較対象その1 |
dec2 |
BigDecimal |
比較対象その2 |
戻り値
boolean - 同値の場合は true
substring
public String substring(String value, Integer beginIndex)
- 開始インデックスから文字列の最後まで切り取る。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
対象文字列 |
beginIndex |
Integer |
開始インデックス |
戻り値
String - 切り取り文字列
substring
public String substring(String value, Integer beginIndex, Integer endIndex)
- 文字列の指定範囲を安全に切り取る。
- 範囲外の指定や不正な値に対して適切に処理する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
対象文字列 |
beginIndex |
Integer |
開始インデックス(省略可能)null を渡した(省略した)場合は0 |
endIndex |
Integer |
終了インデックス(省略可能)null を渡した(省略した)場合は文字列長 |
戻り値
String - 切り取り文字列
isAlphabetNumber
public boolean isAlphabetNumber(String value)
- 文字列が英数字として有効かチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
戻り値
boolean - 有効な場合は true
isNumber
public boolean isNumber(String value)
- 文字列が数値として有効かチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
戻り値
boolean - 有効な場合は true
isNumber
public boolean isNumber(String value, boolean minusNg, boolean decNg)
- 文字列が数値として有効かチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
minusNg |
boolean |
マイナス値を無効とする場合は true |
decNg |
boolean |
小数を無効とする場合は true |
戻り値
boolean - 有効な場合は true
checkLength
public boolean checkLength(String value, int len)
#isBlank(String)がtrueの前提とし、チェック対象がブランクの場合はfalseを返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
len |
int |
有効桁数 |
戻り値
boolean - 有効な場合は true
checkLengthNumber
public boolean checkLengthNumber(String value, int intPartLen, int decPartLen)
- 整数部分と小数点以下の桁数が指定された範囲内であることを確認する。
- 引数はDB項目定義と同じで整数部と小数部を足した桁数と小数部だけの桁数で指定する。
#isNumber(String)がtrueの前提とし、チェック対象がブランクの場合はfalseを返す。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象 |
intPartLen |
int |
整数部と小数部を足した有効桁数 |
decPartLen |
int |
小数部の有効桁数 |
戻り値
boolean - 有効な場合は true
isDate
public boolean isDate(String value)
- 文字列が日付として有効かチェックする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
チェック対象(YYYYMMDD) |
戻り値
boolean - 有効な場合は true
isTrue
public boolean isTrue(String val)
- 文字列が真偽値「真」とみなす値かチェックする。
- 下記の評価を行う。
- "1", "true", "yes", "on"(すべて半角)は
true。 nullまたはブランクはfalseを含み、上記以外はfalse。- 大文字小文字を区別しない。
- 左右の半角スペースは無視する。
- "1", "true", "yes", "on"(すべて半角)は
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
val |
String |
チェック対象 |
戻り値
boolean - 真偽値「真」とみなす場合は true
dateToLocalDate
public LocalDate dateToLocalDate(java.util.Date date)
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
date |
java.util.Date |
Date型(java.sql.Date 含む) |
戻り値
LocalDate - LocalDate型
trimDq
public String trimDq(String value)
- 文字列の開始と終了のダブルクォーテーションを除去する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
対象文字列 |
戻り値
String - 除去後文字列
trimBothEnds
public String trimBothEnds(String value, char prefix, char suffix)
- トリムして両端文字ともに見つかった場合のみ切り捨てる。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
対象文字列 |
prefix |
char |
前の端の文字 |
suffix |
char |
後ろの端の文字 |
戻り値
String - 両端を切り捨てた文字列
trimBothEnds
public String trimBothEnds(String value, String prefix, String suffix)
- トリムして両端文字ともに見つかった場合のみ切り捨てる。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
対象文字列 |
prefix |
String |
前の端の文字 |
suffix |
String |
後ろの端の文字 |
戻り値
String - 両端を切り捨てた文字列
trimZenkakuSpace
public String trimZenkakuSpace(String value)
- 文字列の開始と終了の全角スペースを除去する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
対象文字列 |
戻り値
String - 除去後文字列
trimLeftZero
public String trimLeftZero(String value)
- 文字列の左の
"0"を除去する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
文字列 |
戻り値
String - 処理後の文字
paddingLeftZero
public String paddingLeftZero(String value, int digit)
- 文字列の左に
"0"を詰める。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
文字列 |
digit |
int |
詰めた後の文字桁数 |
戻り値
String - 処理後の文字
paddingLeftZero
public String paddingLeftZero(int value, int digit)
- 数値を文字列に変換して左に
"0"を詰める。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
int |
数値 |
digit |
int |
詰めた後の文字桁数 |
戻り値
String - 処理後の文字
deleteLastChar
public void deleteLastChar(StringBuilder sb)
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
sb |
StringBuilder |
StringBuilder |
deleteLastChar
public void deleteLastChar(StringBuilder sb, int length)
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
sb |
StringBuilder |
StringBuilder |
length |
int |
最終文字長さ |
urlEncode
public String urlEncode(String url)
- JavaScript の encodeURIComponent と合わせるため1バイトブランクを "+" から "%20" に変換しなおす。
- ワイルドカードの "*" を "%2A" に変換する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
url |
String |
変換文字列 |
戻り値
String - 変換後文字列
urlDecode
public String urlDecode(String url)
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
url |
String |
変換文字列 |
戻り値
String - 変換後文字列
jsonEscape
public String jsonEscape(String value)
- JSONでエスケープが必要な文字をエスケープする。
nullも制御文字としてエスケープする。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
文字列 |
戻り値
String - 変換後文字列
jsonUnEscape
public String jsonUnEscape(String value)
- JSONでエスケープが必要な文字のエスケープを除去する。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
value |
String |
文字列 |
戻り値
String - 除去後文字列
getSequenceCode
public String getSequenceCode()
- ナノ秒まで含むタイムスタンプを36進数に変換した値を返す。
- システム内で常にユニークな値を返すため1ナノ秒スリープしてから返す。
- 複数のシステムで使用する場合、ユニークな値を返すためにはホスト名やシステム名を付加するなどの考慮が必要となる。
戻り値
String - シーケンスコード値