본문 바로가기
IT/Java

[Java] - 자바 String 문자열 주민등록번호에서 생년월일(YYYYMMDD) 형식으로 구하는 방법

by 차이나는 개발자 2021. 9. 29.
728x90
반응형

#자바 String 문자열 주민등록번호에서 생년월일(YYYYMMDD) 형식으로 구하는 방법

 

 

#자바 String 문자열 주민등록번호에서 생년월일(YYYYMMDD) 추출하는 메서드

-param: JuminNO String

-return: 생년월일 String

 

-예시

public class test {

	public static String getBirthday(String JuminNO){
		  if(JuminNO == null) return "";
		  if(JuminNO.length() == 0) return "";
		  if(JuminNO.length() < 13) return "";
		  
		  JuminNO = JuminNO.replaceAll("-","");
		  
		  String retVal = "";
		  
		  // 1.생년월일 계산
		  int gubun = toInt(JuminNO.substring(6, 7));
		  String ssn1 = JuminNO.substring(0, 6);
		  
		  switch(gubun){
		    case 1:
		    case 2:
		    case 5:
		    case 6:
		      JuminNO = "19" + ssn1;
		      break;
		    case 3:
		    case 4:
		    case 7:
		    case 8:
		      JuminNO = "20" + ssn1;
		      break;
		    default:
		      JuminNO = "-1";
		      break;
		  }
		  if(JuminNO.equals("-1")) return "";
		  
		  retVal = JuminNO;
		  
		  return retVal;
		  
		}

	public static int toInt(String arg) {
		return new Integer(arg.trim()).intValue();
	}

	public static void main(String[] args) {
		System.out.println(getBirthday("801211-1092835")); // 19801211
		System.out.println(getBirthday("900611-1124921")); // 19900611
		System.out.println(getBirthday("210302-3123527")); // 20210302
	}
}

 

 

 

728x90
반응형

댓글