有一個excel文件,它的一列中有很多文件名。我需要編寫一個應讀取這些文件名並在目標中生成相同的java代碼。可以幫助我嗎?通過閱讀excel表來生成文件
0
A
回答
0
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Iterator;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class Test {
public static void main(String[] args) throws IOException {
try {
FileInputStream file = new FileInputStream(new File("C:\\test.xls"));
HSSFWorkbook workbook = new HSSFWorkbook(file);
HSSFSheet sheet = workbook.getSheetAt(0);
//Iterate through each rows from first sheet
Iterator<Row> rowIterator = sheet.iterator();
while(rowIterator.hasNext()) {
Row row = rowIterator.next();
//For each row, iterate through each columns
Iterator<Cell> cellIterator = row.cellIterator();
while(cellIterator.hasNext()) {
Cell cell = cellIterator.next();
System.out.print(cell.getStringCellValue() + "\t\t");
FileOutputStream outFile =new FileOutputStream(new File("C:\\"+cell.getStringCellValue()));
workbook.write(outFile);
}
System.out.println("");
}
file.close();
/* FileOutputStream outFile =new FileOutputStream(new File("C:\\update.xls"));
workbook.write(outFile);*/
//outFile.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
+0
嘿,那真的很有幫助。非常感謝... :) – GanStack
0
有一些庫可以用來讀取excel文件。在我的情況下,我選擇了Apache POI,您可以免費下載,然後添加到您的項目中。一旦你添加它,創建文檔:
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream("filename.xls"));
,或者如果它是從2007年或更高版本的Excel文件:
XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream("filename.xlsx"));
現在,你可以通過每一行迭代,並讀出第一列:
for(Row row : workbook.getSheetAt(0)) // Go through each row in sheet 0
System.out.println(row.getCell(0).getStringCellValue());
+0
感謝您的寶貴意見。我會利用它.. :) – GanStack
0
公共類的測試{
public static void main(String[] args) throws IOException {
try {
FileInputStream file = new FileInputStream(new File("D:\\sampleFileNames.xls"));
HSSFWorkbook workbook = new HSSFWorkbook(file);
FileOutputStream outFile= null;
HSSFSheet sheet = workbook.getSheetAt(0);
//Iterate through each rows from first sheet
Iterator<Row> rowIterator = sheet.iterator();
while(rowIterator.hasNext()) {
Row row = rowIterator.next();
//For each row, iterate through each columns
Iterator<Cell> cellIterator = row.cellIterator();
Cell cell = cellIterator.next();
File file1 = new File("D:\\Ganesh\\"+cell.getStringCellValue().toString());
if(!file1.createNewFile()) {
System.out.println("File already exists");
/* Cell cell = cellIterator.next();
System.out.print(cell.getStringCellValue() + "\t\t");
outFile =new FileOutputStream(new File("D:\\Ganesh\\"+cell.getStringCellValue().toString()));
//workbook.write(outFile);
System.out.println("");
}
file.close();
outFile.close();
/* FileOutputStream outFile =new FileOutputStream(new File("C:\\update.xls"));
workbook.write(outFile);*/
//outFile.close();
}
}
}catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} }
相關問題
- 1. 閱讀Excel文件通過細胞
- 2. excel文件,而閱讀它通過JavaScript
- 3. 通過Java閱讀Excel文件.xlsx
- 4. 閱讀Excel文件表名
- 5. 通過閱讀XML生成Xsl FO + PDF
- 6. 閱讀Excel文件
- 7. 閱讀Mathematica生成的文本文件
- 8. 閱讀CSV文件,並生成字典
- 9. 閱讀來自其通過DrawText函數產生的「OnDrawCell」事件
- 10. 如何通過閱讀文本文件
- 11. Django的 - 閱讀Excel文件
- 12. C#3.5閱讀Excel文件
- 13. 閱讀Excel文件C#
- 14. 閱讀Excel文件Python
- 15. 通過JavaScript或PHP閱讀MS Excel文件並寫入MongoDB
- 16. 如何通過讀取Excel工作表中的數據來生成sql腳本?
- 17. 閱讀通過FileUpload上傳的excel
- 18. C#閱讀打開Excel通過OleDb的
- 19. 列表生成器/閱讀文件和列表的理解
- 20. 閱讀通過$ _GET提供的文件
- 21. 閱讀文件通過slf4android記錄?
- 22. 如何通過C#閱讀pdf文件?
- 23. 閱讀tcp通過事件
- 24. 通過閱讀它的行來確定文件的大小
- 25. 生成和發送的Excel通過郵件文件
- 26. 如何通過完成閱讀
- 27. 如何閱讀使用webclient通過ajax生成的內容?
- 28. 如何通過AJAX搜索傳遞參數來生成Excel文件?
- 29. 通過閱讀Aspose
- 30. MVC 2通過查看控制器生成Excel文件即時生成
分享您的代碼... – Biswajit