ホーム>source

Excelシートの特定の列を読み取り、Javaで変数を宣言する必要があります。私が行ったプログラムは、Excelシートの内容全体を読み取ります。しかし、Cのような固定列を読み取る必要があります。

これは私がやったことです:

<前>ウィズウィズ

これが私のExcelシートです、

import java.io.File; import java.io.IOException; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; public class JavaApplication4 { private String inputFile; String[][] data = null; public void setInputFile(String inputFile) { this.inputFile = inputFile; } public String[][] read() throws IOException { File inputWorkbook = new File(inputFile); Workbook w; try { w = Workbook.getWorkbook(inputWorkbook); // Get the first sheet Sheet sheet = w.getSheet(0); data = new String[sheet.getColumns()][sheet.getRows()]; // Loop over first 10 column and lines // System.out.println(sheet.getColumns() + " " +sheet.getRows()); for (int j = 0; j <sheet.getColumns(); j++) { for (int i = 0; i < sheet.getRows(); i++) { Cell cell = sheet.getCell(j, i); data[j][i] = cell.getContents(); // System.out.println(cell.getContents()); } } for (int j = 0; j < data.length; j++) { for (int i = 0; i <data[j].length; i++) { System.out.println(data[j][i]); } } } catch (BiffException e) { e.printStackTrace(); } return data; } public static void main(String[] args) throws IOException { JavaApplication4 test = new JavaApplication4(); test.setInputFile("C://users/admin/Desktop/Content.xls"); test.read(); } } と番号が付けられたチットのボウルからウィズウィズへ、単一のチットがランダムに描かれます。描かれたチットが /@v1@/ の倍数である確率を求めますまたは /@v2@/

このデータを読み取り、パターン /@v3@/ を照合する必要があります 、変数を宣言する必要があります。これどうやってするの?

/@ v4@/
あなたの答え
  • 解決した方法 # 1

    何ができるかは、まずsheet.getColumns()を使用してシートからすべての列を取得し、すべての列をリストに格納する必要があります。次に、列に基づいてすべての値を取得して一致させることができます。または、以下のコードを使用して、列「C」のみを取得できます。これが機能するかどうか教えてください。

    <前>ウィズウィズ

  • 解決した方法 # 2

    これは非常にシンプルで効率的なコードであり、期待どおりに機能しています

    <前>ウィズウィズ

  • 解決した方法 # 3

    <前>ウィズウィズ

    }

  • 解決した方法 # 4

    Excelファイルから特定の列を読み取る <前>ウィズウィズ int masterSheetColumnIndex = sheet.getColumns(); List<String> ExpectedColumns = new ArrayList<String>(); for (int x = 0; x < masterSheetColumnIndex; x++) { Cell celll = sheet.getCell(x, 0); String d = celll.getContents(); ExpectedColumns.add(d); } LinkedHashMap<String, List<String>> columnDataValues = new LinkedHashMap<String, List<String>>(); List<String> column1 = new ArrayList<String>(); // read values from driver sheet for each column for (int j = 0; j < masterSheetColumnIndex; j++) { column1 = new ArrayList<String>(); for (int i = 1; i < sheet.getRows(); i++) { Cell cell = sheet.getCell(j, i); column1.add(cell.getContents()); } columnDataValues.put(ExpectedColumns.get(j), column1); }

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ vue.js - WDSからの更新信号を待っています