[ジャワ] ジャンキーXLを使用してJavaでExcelファイルを読む – ジャンキーXLとJavaでの書き込みExcelファイルを読む
仕事とデータ処理の過程で、私たちはしばしば、ファイル、特にExcelファイルと対話する必要が. 今日、私はあなたにJXLで記録されたExcelファイルを読み込むための簡単な手順を紹介します. JXLはライブラリパッケージは、私たちがリードとしてExcelを呼ば対話することができている, 記録,.., あなたはジャンキーXLを見るパッケージについての詳細情報 ここに.
すべてのあなたの第一に ジャンキーXLをダウンロード (または ここに), * .jarファイルを解凍して、単にプロジェクトにコピーする, 右選択]をクリックし ビルドパス / ビルドパスに追加 このライブラリを使用できるようにする. 今、私たちは学ぶことを向ける:
JXLを持つExcelファイルを作成し、作成する方法
JXLのExcelファイルを読み取る方法
開いて、Excelファイルに書き込む方法JXLに持っていた
コードイラスト
作成し、JXLでExcelファイルを作成する
ステップ 1: オブジェクトを作成します。 WritableWorkbook “ポイント” ファイルに. あなたのファイルがすでに存在する場合、それは削除して再作成されることに注意してください.
WritableWorkbook workbook = Workbook.createWorkbook(new File(fileName));
ステップ 2: 作る WritableSheet – あなたはデータシートを記述する必要があり:
WritableSheet sheet = workbook.createSheet("name sheet", 0);
注意: 関数内てcreateSheetできる 2 引数, 最初の引数は、シートの文字列名です, 第二引数 2 シートの位置を表す整数である。, シート位置で始まる 0.
ステップ 3: 次に、方法によって細胞にデータフォーマットを追加する addCell. セルにデータを書き込む, 我々は、必要があります 3 メインフォーム: チェーン, それぞれのラベルで生成された数と式, 数, フォーミュラ. 例:
sheet.addCell(new Label(0, 0, "Add a String to cell")); // add a String to cell A1 sheet.addCell(new Number(0, 1, 100)); // add number 100 to cell A2 sheet.addCell(new Formula(0, 3, "IF(A1=1,"one", "two")")); // add number 100 to cell A3
ステップ 4: 我々はこれをやった後で 3, 我々は、コマンドを実行する必要が 書く と クローズ データ記録を完了するために
workbook.write(); workbook.close();
JXLを持つExcelファイルを読む
ステップ 1: 作る ワークブック “ポイント” ファイルに.
Workbook workbook = Workbook.getWorkbook(new File(fileName));
ステップ 2: 撮影 シート あなたが読みたい. あなたは場所や名前シートシートを得ることができます
Sheet sheet = workbook.getSheet(0);
ステップ 3: スプレッドシートの各セルの内容を読む. あなたは次の操作を行うことができますボックスの内容を取得したい場合: sheet.getCell(とともに, 行).のgetContents(). しかし、あなたが読みたい場合は、ワークシートのセル全体は、最後の行とすることで、データを含む列を取る sheet.getRows() と sheet.getColumns(), 各セルを読み取るためにループに使用. 読んだ後, 我々はまた、必要 近いワークブック データを書き込む場合
for (int row = 0; row < rows; row++) { for (int col = 0; col < cols; col++) { Cell cell = sheet.getCell(col, row); System.out.print(cell.getContents() + "t"); } System.out.println("n"); } workbook.close();
開いて、ジャンキーXLを使用してExcelにデータを置く
開いて、Excelファイルにデータを配置するには, まず、取得する必要があります ワークブック Excelファイルからより多くの私たちが読んだときのように記述する必要があります. 次に作成 WritableWorkbook ワークブックが取られており、我々はこのWritableWorkbook正常に動作しますへ.
Workbook workbook = Workbook.getWorkbook(new File(fileName)); WritableWorkbook writeWorkbook = Workbook.createWorkbook(new File(fileName), workbook);
デモコード
package vietSource.net.IOFile; import java.io.File; import java.io.IOException; import java.util.Scanner; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; import jxl.write.Formula; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; /** * ----------------- @author nguyenvanquan7826 ----------------- * ---------------nguyenvanquan7826.wordpress.com -------------- */ public class ReadWriteExcel { private final String fileName = "/home/nguyenvanquan7826/Desktop/nguyenvanquan7826.xls"; // data to write file private Object[][] data = { { "STT", "Họ và tên", "Điểm", "Xếp loại" }, { "1", "Nguyễn Văn Quân", "9.0", "" }, { "2", "Phạm Thị Hà", "8.0", "" }, { "3", "Nguyễn Bá Cường", "8.5", "" }, { "4", "Vũ Công Tịnh", "9.0", "" }, { "5", "Phạm Trọng Khang", "8", "" }, { "6", "Mai Văn Tài", "8", "" } }; // create and write new file *.xls private void writeFileExcel() { WritableWorkbook workbook; // create workbook try { workbook = Workbook.createWorkbook(new File(fileName)); // create sheet WritableSheet sheet1 = workbook.createSheet("KTPM K10B", 0); // create Label and add to sheet sheet1.addCell(new Label(0, 0, "DANH SÁCH SINH VIÊN TIÊU BIỂU")); // row begin write data int rowBegin = 2; int colBegin = 0; for (int row = rowBegin, i = 0; row < data.length + rowBegin; row++, i++) { for (int col = colBegin, j = 0; col < data[0].length + colBegin; col++, j++) { Object obj = data[i][j]; sheet1.addCell(new Label(col, row, (String) data[i][j])); } } // write file workbook.write(); // close workbook.close(); } catch (IOException e) { System.out.println("Error create file\n" + e.toString()); } catch (RowsExceededException e) { System.out.println("Error write file\n" + e.toString()); } catch (WriteException e) { System.out.println("Error write file\n" + e.toString()); } System.out.println("create and write success"); } // open and read file *.xls private void readFileExcel() { Workbook workbook; try { // create workbook to open file workbook = Workbook.getWorkbook(new File(fileName)); // get sheet want read Sheet sheet = workbook.getSheet(0); // get number row and col contain data int rows = sheet.getRows(); int cols = sheet.getColumns(); System.out.println("Data in file:"); // read data in each cell for (int row = 0; row < rows; row++) { for (int col = 0; col < cols; col++) { Cell cell = sheet.getCell(col, row); System.out.print(cell.getContents() + "\t"); } System.out.println("\n"); } // close workbook.close(); } catch (BiffException e) { System.out.println("File not found\n" + e.toString()); } catch (IOException e) { System.out.println("File not found\n" + e.toString()); } } // open and write file is exists private void openAndWriteFileExcel() { Workbook workbook; WritableWorkbook writeWorkbook; try { // open file workbook = Workbook.getWorkbook(new File(fileName)); // create file copy of root file to write file writeWorkbook = Workbook.createWorkbook(new File(fileName), workbook); // get sheet to write WritableSheet sheet1 = writeWorkbook.getSheet(0); int col = 3; int rowBegin = 3; // write data (formula) for (int row = rowBegin; row < data.length + rowBegin - 1; row++) { Formula f = new Formula(col, row, "IF(C" + (row + 1) + ">8, \"Xuất sắc\", \"Giỏi\")"); sheet1.addCell(f); } writeWorkbook.write(); // close writeWorkbook.close(); } catch (IOException e) { System.out.println("File not found\n" + e.toString()); } catch (RowsExceededException e) { System.out.println("File not found\n" + e.toString()); } catch (WriteException e) { System.out.println("File not found\n" + e.toString()); } catch (BiffException e) { System.out.println("File not found\n" + e.toString()); } System.out.println("open and write success"); } private void showMenu() { System.out.println(); System.out.println("Select an integer for process:"); System.out.println("1 - Create new file and wrire data"); System.out.println("2 - Read file exits"); System.out.println("3 - Open and write to file exits"); } public static void main(String[] args) { ReadWriteExcel rwExcel = new ReadWriteExcel(); while (true) { rwExcel.showMenu(); Scanner scan = new Scanner(System.in); int select = Integer.parseInt(scan.nextLine()); switch (select) { case 1: rwExcel.writeFileExcel(); break; case 2: rwExcel.readFileExcel(); break; case 3: rwExcel.openAndWriteFileExcel(); break; default: scan.close(); break; } } } }
続きを読む (続きを読む): JavaのExcelのAPIチュートリアル
emhoiはExcel関数を使用して読み取るために. あなたがデータを取得する、データエラーステータスベトナム語フォント
例: ル·ズン=> Led?の
あなたではない解決方法を手伝ってくれる !:D
彼の読みはおいしかった :D, 投稿もおいしいです.
を検索、彼らはこのセットを言った. あなたが表示しないようにしよう, あなたが別のライブラリを使用しますが、より使い難しすぎることができない場合 その後
ジャンキーXLを持つフォントをインストールしよう:
ありがとうございます! em làm được rồi 😀
あなたが使用していますか、この道を作る方法?
cái đoạn code này thêm ở đâu vậy ad??
Đây chỉ là code đọc ghi thôi, bạn ứng dụng vào đâu thì tùy bạn nhé.
彼はその後、ギャラクシーは読んでいない、ギャラクシーレンジ市場を使用するExcelを読むために私に尋ねたが、それは再度失敗 “H” また、このような平均単語誤り “ミッドBNH”
このビューをオフラインでフォントをインストールしよう
https://www.cachhoc.net/2014/06/20/java-doc-ghi-file-excel-trong-java-voi-jxl-read-write-excel-file-in-java-with-jxl/#comment-1439
Dear anh Quân.
Anh Quâ cho em hỏi vì sao máy em không import được jxl.write.Label, mặc dù các cái khác thì import được, em kiểm tra trong library cũng đã có Label.class rồi ?
彼らは知らない事. Bạn viết thẳng ra xem đk ko
彼は私に尋ねました, em muốn hiện file Excel trên giao diện thì làm như thế nào ạ. このようなTeXファイルのため、JTextAreaのを使用, Excelはまた、私は知りません. 彼はただで私を助けました. どうもありがとうございます.
ことは、私もああ、それを試したことがありません.
彼は先生に知っている私に尋ねたことが判明しました, 彼らは、この問題を早急に処理されます, 誰に尋ねることができませんでした. 私はどうもありがとうございました.
あなたが起動し、セル内のデータを読み込む場合は、JTableのを読んOのタラバガニ上にデータを置いてもよいです
[はい
こんにちは! この記事のような問題を抱えています:スプレッドシートとして、オンラインドキュメントエディタをサポートする機能を有するプログラムを書きます(giốngグーグルシート). 私はあなたが行うことができるように、問題について学ぶ必要がある表示することができます, JAVAによる. ありがとう
これは少し難しいですが、Javaでのテーブルを学ぶことができます.
テーブルJavaで、私はそれを知っているが、ここでの問題は、多くの人がテーブルの上に同時に動作することができますテーブルの上にボックスを管理する方法であります. ロギング仕事について私が持っている数秒間.
その後たびに、それは、そのログを更新したり、保存またはリロード時にそうでなければ、我々は皆の変更をロード. しかし、保存されたそれらのそれぞれの動作を確実にするために.
子供たちはそのように、このようなデータベース管理システムなどのログファイルに保存されている整理します. しかし、それは難しいだろう取得しても、複数のセル上で動作することができますcilentのログファイルをチェックします. より良い直接Excelファイルにログを保持することです. その後、唯一のコールアップをチェックしたいです. とにかく、おかげで与えられたコメント
私はそれがファイルに保存されるべきだと思います.
私は、ファイルの下に開催されましたが、空間におけるトラブルがどのように後で 5 がある 10 第二に、それは自動的に保存されます. 行うので、あなたの方法eは約あります 5 -10sが現在捕捉され、ユーザーが保存通知, これは、不便を引き起こします . 彼は電子メールを解決する方法を持っています
利用可能 1 保存するためのバックグラウンド・プロセス. スレッドNHEについてもっと読みます
彼らはそれをやった! おかげでA
へ
私は時間を記述する場合 3,4 ,5… なぜ、. ファイルがすでに存在する場合 .
その後、我々は、上記とと述べています. 開口部とあなたを置きます.
婆は、ここにデータを手動で入力した電子の輸出のためのExcelファイルを依頼する方法です, 彼らは先生NTNをExcelにエクスポートすることがコンソールから自分自身を、プログラムを実行した後のデータであれば?
次に、コンソールを実行, インポートは、通常の変数を書き込むに保存しました
こんにちは軍,
頼まは、書き込みExcelの各列の幅は、データに適合されている方法を設定するには、Javaで自分自身を宣言しました.
おかげで,
キャン・アエン
また、私はこのことを理解していません, あなたが見るグーグルしてみてください, オフライン人々のために、ここで道を更新したい場合は、.
Excelファイルを操作できるExcelファイルが、文字列ではないような表現型で、それが操作することができますので、 ?