Java 도구 클래스를 작성하는 몇 가지 개인적인 방법을 기록합니다.
1. 연도와 날짜를 늘리는 방법
public String addYearString(String dateString, int yearNum) {
String addYearString = "";
if (!dateString.equals("") && null != dateString) {
try {
Date date = new SimpleDateFormat("yyyy-MM-dd").parse(dateString);
Calendar ca = Calendar.getInstance();
ca.setTime(date);
ca.add(Calendar.YEAR, yearNum);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
addYearString = sdf.format(ca.getTime());
} catch (ParseException e) {
e.printStackTrace();
}
}
return addYearString;
}
2. 연도, 월, 일 문자열을 전달하고 연도 문자열 메서드를 반환합니다.
public String getYearsString(String dateString) {
String yearString = "";
if (!dateString.equals("") && null != dateString) {
try {
Date date = new SimpleDateFormat("yyyy").parse(dateString);
Calendar ca = Calendar.getInstance();
ca.setTime(date);
int year = ca.get(Calendar.YEAR);
yearString = String.valueOf(year);
} catch (ParseException e) {
e.printStackTrace();
}
}
return yearString;
}
3. yyyy-MM-dd 날짜 문자열을 입력하고 yyyyMMdd 메소드를 반환합니다.
public String getYearMonDay(String dateString) {
String yearMonDay = null;
if (!dateString.equals("") && null != dateString) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
try {
Date dt = simpleDateFormat.parse(dateString);
String year = String.format("%tY", dt);
String mon = String.format("%tm", dt);
String day = String.format("%td", dt);
yearMonDay = year.concat(mon).concat(day);
} catch (ParseException e) {
e.printStackTrace();
}
}
return yearMonDay;
}
4. 파일 경로(파일 이름 포함)를 전달하여 파일 경로(파일 이름 제외) 가져오기 방법
public String getAbsolutePath(String filePathName) {
String newTwoString = "";
if (!filePathName.equals("") && null != filePathName) {
int index = filePathName.lastIndexOf("\\");
newTwoString = filePathName.substring(0, index + 1);
}
return newTwoString;
}
5. 쉼표가 있는 문자열을 문자열 배열로 변환
private String[] privateGetStringArray(String stringValue) {
String[] arrString = stringValue.split(",");
return arrString;
}
6. String to List(다섯 번째 방법 사용)
public List<String> getDocIdList(String docString, String logString, String contractNum) {
List<String> docIdList = new ArrayList<String>();
if (!docString.equals("") && null != docString) {
String[] docStringArray = privateGetStringArray(docString, logString, contractNum);
for (int i = 0; i < docStringArray.length; i++) {
docIdList.add(docStringArray[i]);
}
return docIdList;
} else {
return docIdList;
}
}
일곱, ZIP 압축 패키지 압축 해제 방법
public File getFile(String pathNameString, String fileNameString) {
try {
ZipInputStream zin = new ZipInputStream(new FileInputStream(pathNameString));
BufferedInputStream bin = new BufferedInputStream(zin);
String parent = privateAbsolutePath(pathNameString);
File fout = null;
ZipEntry entry;
try {
while ((entry = zin.getNextEntry()) != null && !entry.isDirectory()) {
fout = new File(parent, fileNameString);
if (!fout.exists()) {
(new File(fout.getParent())).mkdirs();
}
FileOutputStream out = new FileOutputStream(fout);
BufferedOutputStream bout = new BufferedOutputStream(out);
int b;
while ((b = bin.read()) != -1) {
bout.write(b);
}
bout.close();
out.close();
}
bin.close();
zin.close();
} catch (IOException e) {
e.printStackTrace();
}
return fout;
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return null;
}