复制代码代码如下:
импортировать java.io.BufferedInputStream;
импортировать java.io.File;
импортировать java.io.FileInputStream;
импортировать java.io.FileOutputStream;
импортировать java.io.IOException;
импортировать java.nio.channels.FileChannel;
импортировать java.text.DecimalFormat;
импортировать java.text.SimpleDateFormat;
импортировать java.util.Date;
импортировать org.apache.poi.hssf.usermodel.HSSFCell;
импортировать org.apache.poi.hssf.usermodel.HSSFDateUtil;
импортировать org.apache.poi.hssf.usermodel.HSSFRow;
импортировать org.apache.poi.hssf.usermodel.HSSFSheet;
импортировать org.apache.poi.hssf.usermodel.HSSFWorkbook;
импортировать org.apache.poi.poifs.filesystem.POIFSFileSystem;
общественный класс FileOperator {
public static void main(String[] args) выдает исключение {
Строковый путь = "F://1.xls";
печать (путь);
}
public static void print (String path) выдает IOException {
BufferedInputStream in = новый BufferedInputStream(
новый FileInputStream (новый файл (путь)));
POIFSFileSystem fs = новая POIFSFileSystem(in);
HSSFWorkbook wb = новая HSSFWorkbook(fs);
Ячейка HSSFCell = ноль;
HSSFSheet st = wb.getSheetAt(0);
for (int rowIndex = 0; rowIndex <= st.getLastRowNum(); rowIndex++) {
Строка HSSFRow = st.getRow(rowIndex);
если (строка == ноль) {
продолжать;
}
for (shortcolumnIndex = 0, size = row.getLastCellNum();columnIndex <= size;columnIndex++) {
ячейка = row.getCell(columnIndex);
Строковое значение = "";
если (ячейка != ноль) {
// 注意:一定要设成这个,否则可能会出现乱码
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
переключатель (cell.getCellType()) {
случай HSSFCell.CELL_TYPE_STRING:
значение = cell.getStringCellValue();
перерыв;
случай HSSFCell.CELL_TYPE_NUMERIC:
если (HSSFDateUtil.isCellDateFormatted(ячейка)) {
Дата Дата = cell.getDateCellValue();
если (дата!= ноль) {
значение = новый SimpleDateFormat("гггг-ММ-дд")
.формат(дата);
} еще {
значение = "";
}
} еще {
значение = новый DecimalFormat("0").format(ячейка
.getNumericCellValue());
}
перерыв;
случай HSSFCell.CELL_TYPE_FORMULA:
// 导入时如果为公式生成的数据则无值
if (!cell.getStringCellValue().equals("")) {
значение = cell.getStringCellValue();
} еще {
значение = cell.getNumericCellValue() + "";
}
перерыв;
случай HSSFCell.CELL_TYPE_BLANK:
перерыв;
случай HSSFCell.CELL_TYPE_ERROR:
значение = "";
перерыв;
случай HSSFCell.CELL_TYPE_BOOLEAN:
значение = (cell.getBooleanCellValue() == true? "Y"
: «Н»);
перерыв;
по умолчанию:
значение = "";
}
System.out.println(rowIndex + "," + columnsIndex + ":"
+ стоимость);
}
if (columnIndex == 0 && value.trim().equals("")) {
перерыв;
}
}
}
}
}