Skip to content

Instantly share code, notes, and snippets.

@dineshr93
Last active November 15, 2017 16:38
Show Gist options
  • Select an option

  • Save dineshr93/7061b48d0b338e2bb4e5d5a30e98f5fe to your computer and use it in GitHub Desktop.

Select an option

Save dineshr93/7061b48d0b338e2bb4e5d5a30e98f5fe to your computer and use it in GitHub Desktop.
Script to read the excel
package com.din.excel;
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.swing.JOptionPane;
import org.apache.poi.hssf.util.CellReference;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
//http://www.seleniumeasy.com/jxl-tutorials/how-to-read-excel-file-using-java
//https://stackoverflow.com/questions/38522931/adding-data-to-arraylist-while-reading-data-from-excel-using-poi-apache
public class ReadExcel {
static List read(String path, int lastrownum, String lastcolumnchar){
List<Data> datas = new ArrayList<>();
try
{
FileInputStream file = new FileInputStream(path);
//Create Workbook instance holding reference to .xlsx file
XSSFWorkbook workbook = new XSSFWorkbook(file);
//Get first/desired sheet from the workbook
XSSFSheet sheet = workbook.getSheetAt(0);
int rowsize = lastrownum -1;
int colsize = CellReference.convertColStringToIndex(lastcolumnchar);
for (int row = 1; row <= rowsize; row++) { // starting form row 1 to
Data d = new Data();//Data for new row
for (int col = 1; col <= colsize; col++) { //starting from column 1 to
System.out.println(sheet.getRow(row).getCell(col).toString()); //CellReference.convertColStringToIndex("E")
switch (col) {
case 1:
d.setMd5(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 2:
d.setFilename(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 3:
d.setCname(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 4:
d.setCversion(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 5:
d.setClicense(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 6:
d.setcHomepage(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 7:
d.setClinkage(sheet.getRow(row).getCell(col).getStringCellValue());
break;
case 8:
d.setCcomment(sheet.getRow(row).getCell(col).getStringCellValue());
break;
default:
JOptionPane.showMessageDialog (null, "Reduce the column size", "Info", JOptionPane.ERROR_MESSAGE);
break;
}
}
datas.add(d);//add in that entire row data into list
}
workbook.close();
file.close();
return datas;
}
catch (Exception e)
{
e.printStackTrace();
}
return datas;
}
public static void main(String[] args) {
String path = "DLLs-OSS-Info.xlsx";
String lastcolumn = "I";
int lastrowsize = 11;
List<Data> dataout = read(path,lastrowsize,lastcolumn);
for (Iterator iterator = dataout.iterator(); iterator.hasNext();) {
Data data = (Data) iterator.next();
System.out.println(data.getcHomepage());
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment