/** * 祝祭日であるかを返します。 * * @param x 日付 * @return 祝祭日であるか */ public static boolean isHolyday(Date x) { try { return !VRDateParser.getHolydays(x).isEmpty(); } catch (Exception ex) { return false; } }
/** * データ受信。 * * <p>指定された項目全てを受信します。 受信した値はアプリケーション側でキャストして下さい。 * * <p> * * @param name データを取得する項目名 * @return 名前と値のペア(型情報は含まれない) * @throws IOException 入出力エラーが発生した場合 * @throws Exception 何らかの例外が発生した場合 */ protected HashMap getValues(String[] name) throws IOException, Exception { HashMap rec = new HashMap(); String line; try { if (name != null) { for (int i = 0; i < name.length; i++) { if (name[i] == null || name[i].length() == 0) continue; sendMessage(name[i] + LINE_CR); while ((line = dbsIn.readLine()) != null) { if (line.equals(END_OF_DATA)) break; StringTokenizer st = new StringTokenizer(line, ";", false); String fieldName = ((String) st.nextElement()); // String valueField = decode((String) // st.nextElement()); String valueField = (String) st.nextElement(); int pos1 = valueField.indexOf(": "); if (pos1 >= 0) { String dbstype = valueField.substring(0, pos1).trim().toUpperCase(); String value = urlDecode(valueField.substring(pos1 + 2)); if (value == null) { rec.put(fieldName, null); } else if (dbstype.indexOf("NUMBER") >= 0) { rec.put(fieldName, Long.valueOf(value)); } else if (dbstype.indexOf("INTEGER") >= 0) { rec.put(fieldName, Integer.valueOf(value)); } else if ((dbstype.indexOf("DATE") >= 0) || ((dbstype.indexOf("TIMESTAMP") >= 0))) { rec.put(fieldName, VRDateParser.parse(value)); } else { rec.put(fieldName, value); } } else { rec.put(fieldName, urlDecode(valueField)); } } } } } catch (IOException e) { throw e; } catch (Exception e) { throw new Exception(e); } return rec; }
/** * 祝祭日名を返します。 * * @param x 日付 * @return 祝祭日名 */ public static String getHolydayNames(Date x) { try { Iterator it = VRDateParser.getHolydays(x).iterator(); if (it.hasNext()) { StringBuilder sb = new StringBuilder(); VRDateParserHolyday h = (VRDateParserHolyday) it.next(); sb.append(h.getId()); while (it.hasNext()) { h = (VRDateParserHolyday) it.next(); sb.append(", "); sb.append(h.getId()); } return sb.toString(); } } catch (Exception ex) { } return ""; }
/** * 保存するPDFファイル名を返します。 * * @return PDFファイル名 * @throws Exception */ protected String createPDFFileName() throws Exception { Calendar cal = Calendar.getInstance(); return VRDateParser.format(cal.getTime(), "yyyyMMddHHmmss") + ".pdf"; }
/** * 和暦年を返します。 * * @param x 日付 * @throws Exception 処理例外 * @return 和暦年 */ public static int getEraYear(Date x) throws Exception { return Integer.parseInt(VRDateParser.format(x, "e")); }
/** * 省略表記の元号を返します。 * * <p>"平"や"昭"などです。 * * @param x 日付 * @throws Exception 処理例外 * @return 省略表記の元号 */ public static String getEraShort(Date x) throws Exception { return VRDateParser.getEra(x).getAbbreviation(2); }
/** * アルファベット省略表記の元号を返します。 * * <p>"H"や"S"などです。 * * @param x 日付 * @throws Exception 処理例外 * @return アルファベット省略表記の元号 */ public static String getEraAlphabet(Date x) throws Exception { return VRDateParser.getEra(x).getAbbreviation(1); }