最近の更新

2013年3月19日火曜日

Apache POI3.8でシートをコピーする方法

【目的】
Apache POI3.8のライブラリを使用し、Excelファイルのシートをコピーします。



【手順】
1.「Javaプロジェクトの作成方法」の手順で、「POIExcelSample012-CopySheet」といプロジェクトを作成。
2.「poi-3.8-20120326.jarをライブラリに設定する方法」の手順で、プロジェクトに「poi-3.8-20120326.jar」のライブラリを追加。
3.「poi-3.8-20120326.jarに依存するライブラリの設定する方法」の手順で、プロジェクトに「commons-logging-1.1.jar」と「log4j-1.2.13.jar」のライブラリを追加。
4.「Javaクラスファイルの作成方法」の手順で、「Main」というクラスを作成。
5.「Main.java」を以下の様に入力。
import java.io.FileInputStream;
import java.io.FileOutputStream;

import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;

public class Main {
    private static final String INPUT_FILE = "HelloWorld.xls";
    private static final String OUTPUT_FILE = "CopiedSheet.xls";

    public static void main(String[] args) throws Exception {
        FileInputStream in = null;

        try {
            in = new FileInputStream(INPUT_FILE);
            POIFSFileSystem fs = new POIFSFileSystem(in);
            HSSFWorkbook wb = new HSSFWorkbook(fs);
            HSSFSheet sheet2 = wb.cloneSheet(0);
            wb.setSheetName(1,"copied sheet");

            FileOutputStream fileOut = new FileOutputStream(OUTPUT_FILE);
            wb.write(fileOut);
            fileOut.close();
        } finally {
            if (in != null)
                in.close();
        }
    }
}
6.「Ctrl+Shift+O」を押し、パッケージのインポート文を補完。
7.「Ctrl+Shift+F」を押し、ソースコードをフォーマッティング。
8.「Apache POI3.8で簡単なExcelを作成」で作成した「HelloWorld.xls」のファイルをコピーし、「POIExcelSample012-CopySheet」プロジェクトを選択して「Ctrl+V」で貼り付け。
9.「Javaプロジェクトの実行方法」の手順で、「Main.java」を実行。
10.コンソールにエラーが出力されていないか確認。
(※コンソールが表示されていない場合は、「コンソール・ビューの表示方法」を確認)
11.「POIExcelSample012-CopySheet/CopiedSheet.xls」が作成されています。
12.「POIExcelSample012-CopySheet/CopiedSheet.xls」をダブルクリック。
13.「CopiedSheet.xls」が以下の様に開けば成功です。








































以上です。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。

関連記事