当我使用下面的方法时,它将在excelsheet中打印数组列表。当我在一个循环中调用这个方法时,第二次迭代在同一个工作表中打印。我想在不同的工作表中打印下一个迭代,可能创建一个新的工作表并在那里书写。我需要做什么样的改变才能在同一个excel工作簿的不同工作表中打印迭代?
for (int indexSelect=1;indexSelect>=10; indexSelect++){
excelWrite(Prints, indexSelect)
}
public static void excelWrite(ArrayList<Object> Prints, int indexSelect) {
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("Achievers"+indexSelect);
System.out.println("Getting sheet at ..:" +indexSelect);
//Sheet sheet = workbook.getSheetAt(indexSelect);
int rowCount = 0;
// for (Object Names : Prints) {
// org.apache.poi.ss.usermodel.Row row = sheet.createRow(++rowCount);
//org.apache.poi.ss.usermodel.Row row = sheet.createRow(rowCount);
int columnCount = indexSelect;
for (Object field :Prints) {
org.apache.poi.ss.usermodel.Row row = sheet.createRow(++rowCount);
Cell cell = row.createCell(columnCount);
if (field instanceof String) {
cell.setCellValue((String) field);
} else if (field instanceof Integer) {
cell.setCellValue((Integer) field);
}
}
// }
System.out.println("Current indexSelect is: "+indexSelect);
try {
FileOutputStream outputStream = new FileOutputStream("C:\\Softwares\\DataSource\\AchieversDataCopy.xlsx") ;
workbook.write(outputStream);
workbook.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
只需从ExcelWrite方法中创建和保存工作簿:
XSSFWorkbook workbook = new XSSFWorkbook();
for (int indexSelect=1;indexSelect>=10; indexSelect++){
excelWrite(workbook, Prints, indexSelect)
}
try {
FileOutputStream outputStream = new FileOutputStream("C:\\Softwares\\DataSource\\AchieversDataCopy.xlsx") ;
workbook.write(outputStream);
workbook.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
public static void excelWrite(XSSFWorkbook workbook, ArrayList<Object> Prints, int indexSelect) {
XSSFSheet sheet = workbook.createSheet("Achievers"+indexSelect);
System.out.println("Getting sheet at ..:" +indexSelect);
int rowCount = 0;
int columnCount = indexSelect;
for (Object field :Prints) {
Row row = sheet.createRow(++rowCount);
Cell cell = row.createCell(columnCount);
if (field instanceof String) {
cell.setCellValue((String) field);
} else if (field instanceof Integer) {
cell.setCellValue((Integer) field);
}
}
System.out.println("Current indexSelect is: "+indexSelect);
}
我有一个工作,需要执行两次每天在不同的时间。例如10:00和15:30。我怎样才能做到这一点?
问题内容: 和别的: 两者都不起作用(强制关闭应用程序)。我可以尝试其他哪些选择? 问题答案: 您的代码失败,因为您在后台线程中执行睡眠,但是显示数据必须在UI线程中执行。 您必须从runOnUiThread(Runnable)运行displayData或定义处理程序并将消息发送给它。 例如:
我试图制作一个简单的程序,要求输入一个整数,如果该整数是质数,则输出其因子。如果用户的输入不是主因子,它会要求用户输入主因子。问题是,如果我在一行中输入两次有效的素数因子,它不会给出正确的输出。我已经在这方面工作了一段时间了,我想这一定是我明显缺少的东西,因为我无法理解它。 您好,请输入一个整数:64 64有系数:32、16、8、4、2、1请输入另一个整数:y 请输入有效的基本因子: 现在如果我在
问题内容: 使用此代码,我无法多次运行插入查询。它仅询问ID和名称一次(如果counter中的值大于1)。 让我借助一个示例进行说明:- 假设我将值2放入。这样,它应该询问我两次ID和名称,但只询问一次,然后它将我为ID和名称输入的值复制到表中两次。 我怎样才能解决这个问题?如果不能,请提出替代代码,以解决我的问题。 问题答案: 当PL / SQL块被编译时( 而不是 正在执行中),替换变量和分别
我有一个函数,使API调用服务器和更新用户界面与新数据。我想使,使每30秒我使API调用不同的url每次?这些API调用应该是不间断的,只要应用程序正在运行。
我在页面上有一个表,我需要从表中的特定单元格中读取值。我想把这些值写到excel文件中。问题是for loop只循环一次,并且只为Excel中的第一个单元格写入值。我试过很多不同的循环,在谷歌上搜索,但都找不到答案。请帮帮忙。下面是我要编写到Excel的代码: 这是我写入excel文件的地方 循环成功执行并从表中正确打印出值,但我需要将这些值写入Excel。似乎在excel中写入第一个值后,for