반응형
LPAD : Left Pad // 왼쪽에 덧 대는것, 메워 넣는 것
특정 길이만큼 문자열을 왼쪽에 채워 넣는 기능입니다.
SQL에서는 기본함수로 제공되고 있으며, 고정자리의 값을 처리할 때 사용됩니다.
프로젝트를 진행하다보면, 고정길이 전문( I/F, Interface )를 처리할 때 많이 사용됩니다.
public static void main(String[] args) {
String strContext = "ABCDE";
String strLPad = setLPad( strContext, 10, "*" ); // "*"문자로 10자리만큼 LPadding처리한다.
System.out.println( strContext + " LPAD : [" + strLPad + "]" );
}
// LPAD
private static String setLPad( String strContext, int iLen, String strChar ) {
String strResult = "";
StringBuilder sbAddChar = new StringBuilder();
for( int i = strContext.length(); i < iLen; i++ ) { // iLen길이 만큼 strChar문자로 채운다.
sbAddChar.append( strChar );
}
strResult = sbAddChar + strContext; // LPAD이므로, 채울문자열 + 원래문자열로 Concate한다.
return strResult;
}
"ABCDE"라는 문자열을 10자리로 채워서 표현하려고 합니다.
빈 공간에 채워질 문자는 "*"이며, 10자리가 다 찰때까지 "*"문자로 추가합니다.
sbAddChar이라는 StringBuilder변수에 채워질 빈 공간의 길이만큼 "*"문자열을 만듭니다.
그리고, 다음과 같이 문자열을 조립하고, 결과를 Return합니다.
strResult = sbAddChar + strContext; // LPAD이므로, 채울문자열 + 원래문자열로 Concate한다.
결과
ABCDE LPAD : [*****ABCDE]
위와 같이 "ABCDE"라는 원래 문자에 "*****"문자열이 왼쪽에 채워졌습니다.
Main함수에서 "setLPad()"메소드를 호출시 인자값으로 "10자리", "*" 문자로 주었기 때문입니다.
LPAD와 반대 개념으로 RPAD가 있습니다.
특정 길이만큼 우측에 문자열을 채우는 기능입니다.
동일한 로직으로 구현되며, 문자열 조립시에 "기본문자열 + 추가문자열"로 하면 됩니다.
strResult = strContext + sbAddChar;
ABCDE RPAD 결과 : [ABCDE*****]
반응형
'Study > Java' 카테고리의 다른 글
[Java] 문자열내 원하는 문자(열) 찾기 (0) | 2019.06.06 |
---|---|
[Java] ASCII 코드를 이용한 끝문자(숫자) 제거 (0) | 2019.06.06 |
[Java] Apache POI : 엑셀파일 읽기 (0) | 2018.12.02 |
[Java] Apache POI : 다운로드 및 설치 (0) | 2018.11.25 |
Case1. Inner-Query 파싱 (0) | 2018.11.18 |