1 package com.github.mygreen.cellformatter;
2
3 import java.util.Date;
4
5
6 /**
7 * 共通のセルのインタフェース。
8 * POI、JExcelAPIなどのライブラリ間の違いを吸収するためのもの。
9 *
10 * @version 0.6
11 * @since 0.4
12 * @author T.TSUCHIE
13 *
14 */
15 public interface CommonCell {
16
17 /**
18 * 書式のインデックス番号を取得する。
19 * <p>インデックス番号がない場合は0を返す。
20 * @return
21 */
22 short getFormatIndex();
23
24 /**
25 * 書式のパターンを取得する。
26 * <p>パターンがない場合は、空文字を返す。
27 * @return
28 */
29 String getFormatPattern();
30
31 /**
32 * 文字列型のセルかどうか。
33 * @return
34 */
35 boolean isText();
36
37 /**
38 * ブール型のセルかどうか。
39 * @since 0.4
40 * @return true:セルの形式がブール型の場合
41 */
42 boolean isBoolean();
43
44 /**
45 * 数値型のセルかどうか。
46 * @return true:セルの形式が数値型、日付型の場合。
47 */
48 boolean isNumber();
49
50 /**
51 * 文字列型のセルとして値を取得する。
52 * @return true:セルの形式が文字型の場合
53 */
54 String getTextCellValue();
55
56 /**
57 * Boolean型のセルとして値を取得する。
58 * @since 0.4
59 * @return
60 */
61 boolean getBooleanCellValue();
62
63 /**
64 * 数値型のセルとして値を取得する。
65 * <p>日時型の場合でもExcelの内部表現である数値に変換して値を取得する。
66 * @return
67 */
68 double getNumberCellValue();
69
70 /**
71 * 日時型のセルとして値を取得する。
72 * <p>ただじ、タイムゾーンは標準の{@literal GMT-00:00}とする。
73 * <p>数値型の場合でも日時型に変換して値を取得する。
74 */
75 Date getDateCellValue();
76
77 /**
78 * 日時の開始日が1904年かどうか。
79 * 通常は、1900年始まり。
80 * @return
81 */
82 boolean isDateStart1904();
83
84 /**
85 * セルのアドレスを取得する。
86 * @since 0.2
87 * @return 'A12'の形式。
88 */
89 String getCellAddress();
90
91 }