Java Excel API(書き込み機能(1))

转载 2012年03月25日 22:47:38
開始/終了処理

jxl.Workbookのメソッドを使用します。

新規にExcelファイルを作成する。
java.io.Fileインスタンスから作成する。
File excelFile = new File("path/to/excel.xls");
jxl.write.WritableWorkbook workbook = Workbook.createWorkbook(excelFile);


java.io.OutputStreamインスタンスから作成する。
OutputStream output = new java.io.FileOutputStream("path/to/excel.xls");
jxl.write.WritableWorkbook workbook = Workbook.createWorkbook(output);


既存のExcelファイルから操作用ファイルを作成する。
java.io.Fileインスタンスから作成する。
// 既存のExcelファイルを読み込む
File originalExcelFile = new File("path/to/original/excel.xls");
jxl.Workbook originalExcel = Workbook.getWorkbook(originalWorkbook);
// 新規作成ファイル用Fileインスタンスを生成
File newExcelFile = new File("path/to/new/excel.xls");
// 書き込み用インスタンスを生成
jxl.write.WritableWorkbook workbook =
Workbook.createWorkbook(newExcelFile, originalExcel);


java.io.OutputStreamインスタンスから作成する。
// 既存のExcelファイルを読み込む
File originalExcelFile = new File("path/to/original/excel.xls");
jxl.Workbook originalExcel = Workbook.getWorkbook(originalWorkbook);
// 新規作成ファイル用OutputStreamインスタンスを生成
OutputStream output =
new java.io.FileOutputStream("path/to/new/excel.xls");
// 書き込み用インスタンスを生成
jxl.write.WritableWorkbook workbook =
Workbook.createWorkbook(output, originalExcel);


保存してExcelファイルの操作を終了する。
// 書き込み用にインスタンスを生成
File excelFile = new File("path/to/excel.xls");
jxl.write.WritableWorkbook workbook = Workbook.createWorkbook(excelFile);

/*
* 書き込み処理
*/

// 内容を保存
workbook.write();
// 終了
workbook.close();



ワークブックの操作

jxl.writeWritableWorkbookを使用します。
以下変数workbookをWritableWorkbookのインスタンスとします。

ワークブック内のシート数を確認する。
int count = workbook.getNumberOfSheets();


内容を書き込むためにシートのインスタンスを取得する。
// インデックスを指定して取得する
int index = 0;
jxl.write.WritableSheet sheetByIndex = workbook.getSheet(index);

// シート名を指定して取得する
String sheetName = "Sheet1";
jxl.write.WritableSheet sheetByName = workbook.getSheet(sheetName);

// 全てのシートを取得する
jxl.write.WritableSheet[] sheets = workbook.getSheets();


※ シートの操作はこちらを参照してください。

既存のシートの内容を別シートにコピーする。

コピー対象のシートをインデックスで指定
// 1シート目の内容を3シート目にコピーする。名称を変更
workbook.copySheet(0, "コピーされたシート", 2);


コピー対象のシートを名前で指定
// シート名「Sheet1」の内容を3シート目にコピーする。名称を変更
workbook.copySheet("Sheet1", "コピーされたシート", 2);


ワークブック内に新規シートを作成する。
// 2シート目に新規シートを作成する
jxl.write.WritableSheet newSheet = workbook.createSheet("newSheet", 1);


シートの順序を変更する。
// 1シート目のシートを3シート目に移動する
jxl.write.WritableSheet movedSheet = workbook.moveSheet(0, 2);


シートを削除する。
// 1シート目を削除する。
workbook.removeSheet(0);


登録された名前定義を取得する。
※ 「挿入->名前->定義」で登録された名前定義名称を取得します。
String[] rangeNames = workbook.getRangeNames();


名前定義されたセル範囲を取得する。
String rangeName = "area1";
Range[] ranges = workbook.findByName(rangeName);

※ 取得できたセル範囲に対する書き込みはできません。

シートの操作

jxl.write.WritableSheetを使用します。
WritableSheetインスタンスの取得はこちらを参照してください。
以下変数sheetをWritableSheetのインスタンスとします。


シート名を設定する。
String sheetName = "Sheet1";
sheet.setName(sheetName);


シートに行を追加する。
10行追加する
for (int i = 0; i < 10; i++) {
sheet.insertRow(i);
}


シートに列を追加する。
10列追加する
for (int i = 0; i < 10; i++) {
sheet.insertColumn(i);
}


行を削除する。
1行目を削除する
sheet.removeRow(0);


列を削除する。
1列目を削除する
sheet.removeColumn(0);


内容を書き込むためにセルのインスタンスを取得する。
// 行、列を指定してセルを取得
int column = 0;
int row = 0;
jxl.write.WritableCell cell = sheet.getWritableCell(column, row);

// セル名を指定して取得
String cellName = "A1";
jxl.write.WritableCell cellByName = sheet.getWritableCell(cellName);

※ セルの操作は次回に記述します。

値、フォーマットを設定したセルをシートに追加する。
WritableCell cell = null;

/*
* 値、フォーマットを設定
* 設定方法は次回に記述します
*/

sheet.addCell(cell);



シート内のページ切り替え位置を設定する。
int breakPosition = 10;
// 列の区切り位置を取得
sheet.addRowPageBreak(10);


行の高さを設定する。
// 設定対象行番号
int row = 3;
// 高さ
int height = 20;
sheet.setRowView(row, height);

// 行を折りたたむ場合
row = 5;
boolean collapse = true;
sheet.setRowView(row, collapse);

// 折りたたみ、高さを合わせて設定
row = 10;
collapse = false;
sheet.setRowView(row, height, collapse);



列の幅を設定する。
// 設定対象列番号
int column = 3;
// 幅
int width = 20;
sheet.setColumnView(column, width);


列のフォーマットを設定する。
// 設定対象列番号
int column = 3;
// セルのフォーマット
CellView cellView = new CellView();

/*
* 値、フォーマットを設定
* 設定方法は次回に記述します
*/


sheet.setColumnView(column, cellView);

※ 行単位での設定はできません。

セルを結合する。
// 結合開始セル位置
int fromRow = 0;
int fromColumn = 1;
// 結合終了セル位置
int toRow = 3;
int toColumn = 3;
jxl.Range mergedCells = sheet.mergeCells(fromColumn, fromRow, toColumn, toRow);


セルの結合を解除する。
// 結合位置のRangeインスタンスを取得
Range[] mergedCells = sheet.getMergedCells();
for (int i = 0; i < sheet.getMergedCells.length; i++) {
sheet.unmergeCells(mergedCells[i]);
}


シート内のイメージを操作する。
// イメージ数の取得
int imageCount = sheet.getNumberOfImages();

for (int i = 0; i < imageCount; i++) {
// 設定されたイメージの取得
jxl.write.WritableImage image = sheet.getImage(i);
// 設定されたイメージの削除
sheet.removeImage(image);
}

// イメージの新規追加 ※WritableImageのインスタンス化は次回に記述します
jxl.write.WritableImage image =
new jxl.write.WritableImage(0, 0, 100, 100, new File("path/to/image/file"));
sheet.addImage(image);


シート内のハイパーリンクを操作する。
// 設定済みリンクの取得
jxl.write.WritableHyperLink[] links = sheet.getWritableHyperlinks();

for (int i = 0; i < links.length; i++) {
// 設定されたリンクの削除
sheet.removeHyperlink(links[i]);
// リンクのみを削除し、内容は残す場合
sheet.removeHyperlink(links[i], true);
}

// ハイパーリンクの新規追加 ※WritableHyperlinkのインスタンス化は次回に記述します
jxl.write.WritableHyperlink link =
new jxl.write.WritableHyperlink(0, 0, new File("path/to/linked/file"));
sheet.addHyperlink(link);

Java Excel API(書き込み機能(2))

セルの操作 jxl.write.WritableCellのメソッドを使用します。 以下変数sheetをWritableSheetのインスタンスとします。 セルを生成する。 セルの表示形...

Java Excel API(読み込み機能)

「Java Excel API(以下JXLと記述します)」は、JavaでMicrosoft Excelを扱うことのできる オープンソースのライブラリです。 同様のライブラリとしてはApache P...

java中excel的api应用1

使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用Java语言来操纵Excel文件并不是一件容易的事。在Web应用 日益盛行的今天,通过Web来操作Excel文件的需求...

java操作Excel有两种方式 方式1:jxl操作Excel jxl的API

java操作Excel有两种方式 方式1:jxl操作Excel 方式2:poi操作Excel  下面介绍jxl API:使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用...

jxl的api--java解析Excel

使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用Java语言来操纵Excel文件并不是一件容易的事。在Web应用日益盛行的今天,通过Web来操作Excel文件的需求越来...

Java Excel API 使用方法

下载地址:http://sourceforge.net/projects/jexcelapi/files/     Workbook提供的方法   1. int getNumberOfSh...
  • cuishi0
  • cuishi0
  • 2011年09月23日 18:38
  • 236

JAVA EXCEL API(jxl)简介

Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该 API非 Windows操作系统也可以通过纯...

java excel Workbook API

一、功能介绍: 从Excel 95、97、2000等格式的文件中读取数据;    读取Excel公式(可以读取Excel 97以后的公式);    生成Excel数据表(格式为Excel 97); ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java Excel API(書き込み機能(1))
举报原因:
原因补充:

(最多只允许输入30个字)