2015-10-07 34 views
1

我只是想将Java程序的结果写入Excel单元格中。假设结果是5,然后我在主代码()是这样的:将Java程序的结果写入Excel单元格

XSSFWorkbook wb = C:\Users\Username\Desktop\java-programs\results.xlsm; 
    XSSFSheet ExcelSheet = wb.getSheet("numbers"); 
    XSSFRow row = ExcelSheet.getRow(0); 
    XSSFCell cell = row.getCell(0); 
    cell.setCellValue(5); 

但是,此代码不能编译。

我阅读某些示例关于此主题的,而只是给出的代码是指Excel工作表为(例如)“片”,然后继续与sheet.getRow(some number)。这些示例没有解释我如何告诉Java要写入哪个工作簿。

+0

是什么,你得到的编译错误信息? – gaRos

+0

[写入使用Apache POI Excel中的特定单元格位置(http://stackoverflow.com/questions/12112958/writing-to-a-particular-cell-location-using-apache-poi-excel) – fabian

+0

的可能的复制它给出了一些错误信息......例如:“预期”和“非法字符‘\’” –

回答

1

你的第一个行不正确..试试这个:

String fileName = "C:/Users/Username/Desktop/java-programs/results.xlsm"; 
FileInputStream fileIn = new FileInputStream(fileName); 
Workbook wb = WorkbookFactory.create(fileIn); 

// update the workbook 
wb.getSheet("numbers").getRow(0).getCell(0).setCellValue(5); 

fileIn.close(); 

FileOutputStream fileOut = new FileOutputStream(fileName); 
wb.write(fileOut); 
fileOut.close(); 
+0

的代号为“XSSFWorkbook WB =新XSSFWorkbook(新的FileInputStream(新文件(” C:\\ \\用户名\ \桌面\\ Java的程序\\ results.xlsm “)));”在开始时,它现在编译...我甚至可以运行该程序而不会收到错误消息....唉,数字“5”不会打印到Excel表格中......没有任何事情发生在那里 –

+1

您是否写过它与FileOutputStream? – ergonaut

+0

如果我用FileOutputStream中,我得到运行文件时出现以下错误信息:“该进程无法访问该文件,因为它正被另一个进程使用” –

相关问题