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. リストへの文字列 (5 番目の方法を使用)
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;
}
}
7、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;
}