public class ExcelModel
extends java.lang.Object
POI による、EXCELバイナリファイルに対する、データモデルクラスです。 共通的な EXCEL処理 を集約しています。 staticメソッドによる簡易的なアクセスの他に、順次処理も可能なように 現在アクセス中の、Workbook、Sheet、Row、Cell オブジェクトを内部で管理しています。 入力形式は、openXML形式にも対応しています。 ファイルの内容に応じて、.xlsと.xlsxのどちらで読み取るかは、内部的に 自動判定されます。
| コンストラクタと説明 |
|---|
ExcelModel(java.io.File file)
EXCELファイルのWookbookのデータ処理モデルを作成します。
|
ExcelModel(java.io.File file,
boolean isOpen)
EXCELファイルのWookbookのデータ処理モデルを作成します。
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
void |
activeWorkbook(boolean isCellDel)
Workbook の全Sheetを対象に、空行を取り除き、全体をシュリンクします。
|
void |
addImageFile(java.lang.String imgFile,
int shtNo,
int rowNo,
int colNo)
指定のシートの行・列の箇所に、イメージファイルを挿入します。
|
void |
addImageFile(java.lang.String imgFile,
int shtNo,
int row1,
int col1,
int row2,
int col2,
int dx1,
int dy1,
int dx2,
int dy2)
指定のシートの行・列の箇所に、イメージファイルを挿入します。
|
void |
createRow(int rowNo)
Excelの指定行のRowオブジェクトを作成します。
|
void |
createSheet(java.lang.String shtName,
boolean isOverwrite)
内部 Workbookより、新しいSheetを作ります。
|
int |
getFirstRowNum()
内部 Workbookの 現在Sheet の最初の行番号を返します。
|
int |
getLastRowNum()
内部 Workbookの 現在Sheet の最後の行番号を返します。
|
java.lang.String[] |
getNames()
名前定義一覧を内部の Workbook から取得します。
|
int |
getNumberOfSheets()
内部 Workbookの Sheet数を返します。
|
java.lang.String |
getSheetName(int shtNo)
内部 Workbook の 指定のSheet番号のシート名前を返します。
|
java.lang.String[] |
getSheetNames()
シート一覧を、内部の Workbook から取得します。
|
int |
getSheetNo(java.lang.String shtName)
内部 Workbook の 指定のSheet名のシート番号を返します。
|
java.lang.String[] |
getStyleNames()
書式のスタイル一覧を内部の Workbook から取得します。
|
java.lang.String |
getValue(int rowNo,
int colNo)
現在のrow にあるセルの属性値を返します。
|
java.lang.String[] |
getValues(int rowNo)
現在のRow にあるセルの属性値を配列で返します。
|
static void |
main(java.lang.String[] args)
アプリケーションのサンプルです。
|
void |
removeCell(int startCellNum)
Excelの処理中のRowオブジェクトの指定カラム以降の余計なCellオブジェクトを削除します。
|
void |
removeRow(int startRowNum)
Excelの指定行以降の余計なRowオブジェクトを削除します。
|
void |
removeSheet(int fromNo,
int toNo)
Excelの指定Sheetオブジェクトを削除します。
|
void |
saveFile(java.io.File file)
内部 Workbook オブジェクトをファイルに書き出します。
|
void |
setAddTitleSheet(java.lang.String shtName)
Sheet一覧を先頭Sheetに作成する場合のSheet名を指定します。
|
void |
setCellLink(java.lang.String linkVal,
int colNo)
Excelの指定セルにHyperlinkを設定します。
|
void |
setCellStyle()
データ設定する セルに、罫線を追加します。
|
void |
setCellValue(java.lang.String dataVal,
int colNo)
Excelの指定セルにデータを設定します。
|
void |
setCellValue(java.lang.String dataVal,
int colNo,
boolean isNumber)
Excelの指定セルにデータを設定します。
|
void |
setDataStartRow(int st)
データ行の書き込み開始位置の行番号を設定します。
|
void |
setFont(java.lang.String fontName,
short fontPoint)
内部 Workbook に、フォント名、フォントサイズを設定します。
|
void |
setRecalcSheetName(java.lang.String[] sheets)
EXCELで、出力処理の最後にセルの計算式の再計算をさせるシート名の配列を指定します。
|
void |
setRefSheetName(java.lang.String refSheetName)
内部 Workbookより、雛形Sheetをセットします。
|
void |
setSheetName(int shtNo,
java.lang.String shtName)
内部 Workbook の指定のシート番号の Sheet の名前を設定します。
|
void |
setValues(java.lang.String[] vals,
int rowNo)
row にあるセルのオブジェクト値を設定します。
|
void |
setValues(java.lang.String[] vals,
int rowNo,
boolean[] isNums)
row にあるセルのオブジェクト値を設定します。
|
void |
sheetCopy(TextConverter conv,
java.lang.String shtName)
Workbook の雛形シートのTextConverter した、新しいSheetを作成します。
|
void |
sheetSelected(boolean isSelect)
現在のシートを選択済み(true)か、非選択済み(false)に設定します。
|
void |
textConverter(java.util.Map convMap)
Workbook の全Sheetを対象に、テキスト変換処理を行います(XSLX限定)。
|
void |
textConverter(TextConverter conv)
Workbook の全Sheetを対象に、テキスト変換処理を行います(XSLX限定)。
|
void |
useAutoCellSize(boolean flag)
全てのSheetに対して、autoSizeColumn設定を行うかどうか指定します(初期値:false)。
|
void |
useAutoCellSize(boolean flag,
int count)
全てのSheetに対して、autoSizeColumn設定を行うかどうか指定します(初期値:false)。
|
public ExcelModel(java.io.File file)
file - EXCELファイルExcelModel( File , boolean )public ExcelModel(java.io.File file,
boolean isOpen)
file - EXCELファイルisOpen - true:ファイルオープン/false:新規作成ExcelModel( File )public void setFont(java.lang.String fontName,
short fontPoint)
fontName - フォント名 ("MS Pゴシック" など。nullの場合セットしません)fontPoint - フォントの大きさ (0やマイナスの場合はセットしません)public void setCellStyle()
public void useAutoCellSize(boolean flag)
flag - autoSizeColumn設定を行うかどうか [true:自動カラム幅設定を行う/false:行わない]useAutoCellSize( boolean,int )public void useAutoCellSize(boolean flag,
int count)
flag - autoSizeColumn設定を行うかどうか [true:自動カラム幅設定を行う/false:行わない]count - 最大幅を標準セル幅の何倍にするかを指定。マイナスの場合は、無制限useAutoCellSize( boolean )public void setRecalcSheetName(java.lang.String[] sheets)
sheets - 対象シート名の配列public void setDataStartRow(int st)
st - データ行の開始位置。未設定時は、-1useAutoCellSize( boolean )public void setAddTitleSheet(java.lang.String shtName)
shtName - Sheet一覧のSheet名makeAddTitleSheet()public int getNumberOfSheets()
public void setRefSheetName(java.lang.String refSheetName)
refSheetName - 参照シート名(nullの場合、参照シート使用する場合は、先頭のシート)public void createSheet(java.lang.String shtName,
boolean isOverwrite)
shtName - シート名 (重複する場合は、(2)、(3)のような文字列を追加 、nullの場合は、"Sheet")isOverwrite - 雛形シート名をそのまま使用する場合は、true を指定します。public void setSheetName(int shtNo,
java.lang.String shtName)
shtNo - シート番号shtName - シート名 (重複する場合は、(1)、(2)のような文字列を追加 、nullの場合は、"Sheet")public java.lang.String getSheetName(int shtNo)
shtNo - シート番号public int getSheetNo(java.lang.String shtName)
shtName - シート名public void removeSheet(int fromNo,
int toNo)
fromNo - 削除する開始シート番号(含む)toNo - 削除する終了シート番号(含む)public int getFirstRowNum()
public int getLastRowNum()
public void createRow(int rowNo)
rowNo - 行の番号public void removeRow(int startRowNum)
startRowNum - 指定以降の余計な行を削除public void removeCell(int startCellNum)
startCellNum - 指定以降の余計なカラムを削除public void setValues(java.lang.String[] vals,
int rowNo)
vals - 新しい配列値。rowNo - 値が変更される行(無視されます)public void setValues(java.lang.String[] vals,
int rowNo,
boolean[] isNums)
vals - 新しい配列値。rowNo - 値が変更される行(無視されます)isNums - セルが、NUMBER型の場合は、true/それ以外は、falsepublic void setCellValue(java.lang.String dataVal,
int colNo)
dataVal - String文字列colNo - セルの番号(0,1,2・・・・)setCellValue( String,int,boolean )public void setCellValue(java.lang.String dataVal,
int colNo,
boolean isNumber)
dataVal - String文字列colNo - セルの番号(0,1,2・・・・)isNumber - セルが、NUMBER型の場合は、true/それ以外は、falsecreateRow( int ),
setCellValue( String,int )public void setCellLink(java.lang.String linkVal,
int colNo)
linkVal - Link文字列(シート名)colNo - セルの番号(0,1,2・・・・)setCellValue( String,int )public java.lang.String[] getValues(int rowNo)
rowNo - 行の番号public java.lang.String getValue(int rowNo,
int colNo)
rowNo - 値が参照される行colNo - 値が参照される列public void addImageFile(java.lang.String imgFile,
int shtNo,
int rowNo,
int colNo)
imgFile - 挿入するイメージファイル名shtNo - シート番号rowNo - 挿入する行colNo - 挿入する列public void addImageFile(java.lang.String imgFile,
int shtNo,
int row1,
int col1,
int row2,
int col2,
int dx1,
int dy1,
int dx2,
int dy2)
imgFile - 挿入するイメージファイル名shtNo - シート番号row1 - 挿入する行(開始)col1 - 挿入する列(開始)row2 - 挿入する行(終了-含まず)col2 - 挿入する列(終了-含まず)dx1 - 開始セルのX軸座標(マージン)dy1 - 開始セルのY軸座標(マージン)dx2 - 終了セルのX軸座標(マージン)dy2 - 終了セルのY軸座標(マージン)public void saveFile(java.io.File file)
file - セーブするファイルpublic void activeWorkbook(boolean isCellDel)
isCellDel - Cellの末尾削除を行うかどうか(true:行う/false:行わない)public void textConverter(java.util.Map convMap)
convMap - 変換対象を管理するMapオブジェクトtextConverter( TextConverter )public void textConverter(TextConverter conv)
conv - TextConverterインターフェースtextConverter( Map )public void sheetSelected(boolean isSelect)
isSelect - true:シート選択/false:非選択public void sheetCopy(TextConverter conv, java.lang.String shtName)
conv - TextConverterインターフェースshtName - シート名textConverter( Map )public java.lang.String[] getSheetNames()
POIUtil.getSheetNames( Workbook )public java.lang.String[] getNames()
POIUtil.getNames( Workbook )public java.lang.String[] getStyleNames()
POIUtil.getStyleNames( Workbook )public static void main(java.lang.String[] args)
args - コマンド引数配列Webアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.