私はExcel(xlsx)スプレッドシートを実行し、2次元配列でデータを読み込むサンプルプログラムを作成しようとしています。私はグーグルでサンプルを見つけました。 しかし、私が直面している問題は、Eclipseからコードを実行するときにうまくいきますが、ターミナル経由で実行されていないということです。端末からJavaコードを実行中に発生する問題
ここで私は端子を介してコードを実行している間、私は取得していますエラーのスクリーンショットを添付しています: -
私が使用しているコードは次のとおりです。 - 私は
import java.io.FileInputStream;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ExcelDemo {
public static void main(String[] args) {
ExcelDemo xread2 = new ExcelDemo();
}
public ExcelDemo() {
getvalue_1();
}
public static void getvalue_1() {
XSSFRow row;
XSSFCell cell;
String[][] value = null;
double[][] nums = null;
try {
FileInputStream inputStream = new FileInputStream(
"/home/ravi/Desktop/abc/Firebase/sid.xlsx");
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
// get sheet number
int sheetCn = workbook.getNumberOfSheets();
for (int cn = 0; cn < sheetCn; cn++) {
// get 0th sheet data
XSSFSheet sheet = workbook.getSheetAt(cn);
// get number of rows from sheet
int rows = sheet.getPhysicalNumberOfRows();
// get number of cell from row
int cells = sheet.getRow(cn).getPhysicalNumberOfCells();
value = new String[rows][cells];
for (int r = 0; r < rows; r++) {
row = sheet.getRow(r); // bring row
if (row != null) {
for (int c = 0; c < cells; c++) {
cell = row.getCell(c);
nums = new double[rows][cells];
if (cell != null) {
switch (cell.getCellType()) {
case XSSFCell.CELL_TYPE_FORMULA:
value[r][c] = cell.getCellFormula();
break;
case XSSFCell.CELL_TYPE_NUMERIC:
value[r][c] = ""
+ cell.getNumericCellValue();
break;
case XSSFCell.CELL_TYPE_STRING:
value[r][c] = ""
+ cell.getStringCellValue();
break;
case XSSFCell.CELL_TYPE_BLANK:
value[r][c] = "[BLANK]";
break;
case XSSFCell.CELL_TYPE_ERROR:
value[r][c] = "" + cell.getErrorCellValue();
break;
default:
}
System.out.print(value[r][c]);
} else {
System.out.print("[null]\t");
}
} // for(c)
System.out.print("\n");
}
} // for(r)
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
ジャーこのデモでの使用方法は次のとおりです。 -
- dom4j.jar
- POI-3.9.jar
- POI-OOXML-3.5-FINAL.jar
- POI-OOXML-スキーマ-3.7-beta1.jar
- のXMLBeans-2.6.0.jar
どんな助けもありがとうございます。
ありがとうございます。
ライブラリを使用している場合は、コンパイル時にクラスパスに置く必要があります。 –