23 个解决方案
#1
现在已经获取list数据,然后就算是不知道该怎么分割,生成多个excel.求解.
#2
循环,一条一条的写入, 当到第501条的时候新建excel 然后到1001的时候在新建。。。以此类推 。 理论上是可行的。
#3
如何获取存储501或者1001这个值呢
#4
POI 不是有创建excel 的方法啊。直接调用。
#5
我知道啊,关键现在是我不知道该怎么分割,具体代码卡壳了.
例如我想把1-5000这个范围中的数据分割成每500条数据生成一个excel.
#7
需求是这样的,下载的excel最多能65536行,现在做个一个功能从编号A到编号B里面数据生成一个excel.
但是客户感觉这样数据量有点多,想把这一个范围里面的数据按照每500条,分割成一个excel
#8
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
通过总条数然后判断有几个sheet ,然后循环写到对应 的excel
#9
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
通过总条数然后判断有几个sheet ,然后循环写到对应 的excel
不是要有多个sheet,而是每500条数据生成一个excel
#10
那就生成excel 的时候生成多个。
#11
那就生成excel 的时候生成多个。
如何获取存储501或者1001这个值呢
#12
你那是不是循环item 从 501 开始 写到新的excel里面。
#13
你那是不是循环item 从 501 开始 写到新的excel里面。
对的,list从501开始循环在写到另外一个excel里面
#14
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
#15
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
#16
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
#17
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
#18
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.excel;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
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;
/**
*
* @author lugl
*/
public class Test {
public static void main(String[] args) {
List<String> strings = new ArrayList<>();
for (int i = 0; i < 30; i++) {
strings.add("test" + i);
}
for (int i = 0; i < strings.size(); i++) {
if (i % 3 == 0) {
List<String> list = new ArrayList<>();
int fromIndex = i / 3 * 3;
int toIndex = (i / 3 + 1) * 3;
if (toIndex > strings.size()) {
toIndex = strings.size();
}
list = strings.subList(fromIndex, toIndex);
createEx(list, "sheet" + i);
}
}
}
public static void createEx(List<String> list, String sheetName) {
FileOutputStream os = null;
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet(sheetName);
for (int i = 0; i < list.size(); i++) {
String string = list.get(i);
Row row = sheet.createRow(i);
Cell cell = row.createCell(0);
cell.setCellValue(string);
}
try {
os = new FileOutputStream("D:\\" + sheetName + ".xls");
wb.write(os);
os.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
#19
随便写了一个,你导入poi的包之后就可以直接运行的,拿去参考一下吧
#20
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
772316481
非常感谢啊
#21
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
772316481
非常感谢啊
我用了你写的那个代码,没有数据啊
#22
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
772316481
非常感谢啊
我用了你写的那个代码,没有数据啊
帮我远程看一下吧,先谢啦
#23
循环,一条一条的写入, 当到第501条的时候新建excel 然后到1001的时候在新建。。。以此类推 。 理论上是可行的。
如何获取存储501或者1001这个值呢
for(int i=0;i<list.size();i++){
if(i>500){
...
}
}
#1
现在已经获取list数据,然后就算是不知道该怎么分割,生成多个excel.求解.
#2
循环,一条一条的写入, 当到第501条的时候新建excel 然后到1001的时候在新建。。。以此类推 。 理论上是可行的。
#3
循环,一条一条的写入, 当到第501条的时候新建excel 然后到1001的时候在新建。。。以此类推 。 理论上是可行的。
如何获取存储501或者1001这个值呢
#4
POI 不是有创建excel 的方法啊。直接调用。
#5
POI 不是有创建excel 的方法啊。直接调用。
我知道啊,关键现在是我不知道该怎么分割,具体代码卡壳了.
例如我想把1-5000这个范围中的数据分割成每500条数据生成一个excel.
#6
#7
POI 不是有创建excel 的方法啊。直接调用。
我知道啊,关键现在是我不知道该怎么分割,具体代码卡壳了.
例如我想把1-5000这个范围中的数据分割成每500条数据生成一个excel.
需求是这样的,下载的excel最多能65536行,现在做个一个功能从编号A到编号B里面数据生成一个excel.
但是客户感觉这样数据量有点多,想把这一个范围里面的数据按照每500条,分割成一个excel
#8
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
通过总条数然后判断有几个sheet ,然后循环写到对应 的excel
#9
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
通过总条数然后判断有几个sheet ,然后循环写到对应 的excel
不是要有多个sheet,而是每500条数据生成一个excel
#10
那就生成excel 的时候生成多个。
#11
那就生成excel 的时候生成多个。
如何获取存储501或者1001这个值呢
#12
你那是不是循环item 从 501 开始 写到新的excel里面。
#13
你那是不是循环item 从 501 开始 写到新的excel里面。
对的,list从501开始循环在写到另外一个excel里面
#14
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
#15
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
#16
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
#17
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
#18
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.excel;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
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;
/**
*
* @author lugl
*/
public class Test {
public static void main(String[] args) {
List<String> strings = new ArrayList<>();
for (int i = 0; i < 30; i++) {
strings.add("test" + i);
}
for (int i = 0; i < strings.size(); i++) {
if (i % 3 == 0) {
List<String> list = new ArrayList<>();
int fromIndex = i / 3 * 3;
int toIndex = (i / 3 + 1) * 3;
if (toIndex > strings.size()) {
toIndex = strings.size();
}
list = strings.subList(fromIndex, toIndex);
createEx(list, "sheet" + i);
}
}
}
public static void createEx(List<String> list, String sheetName) {
FileOutputStream os = null;
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet(sheetName);
for (int i = 0; i < list.size(); i++) {
String string = list.get(i);
Row row = sheet.createRow(i);
Cell cell = row.createCell(0);
cell.setCellValue(string);
}
try {
os = new FileOutputStream("D:\\" + sheetName + ".xls");
wb.write(os);
os.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
#19
随便写了一个,你导入poi的包之后就可以直接运行的,拿去参考一下吧
#20
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
772316481
非常感谢啊
#21
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
772316481
非常感谢啊
我用了你写的那个代码,没有数据啊
#22
都拿到list了还不能根据条数创建表?
HSSFWorkbook workbook;
HSSFSheet sheet;
for(int i=0;i<list.size;i++){
if(i%500==0){
workbook = new HSSFWorkbook();
sheet = workbook.createSheet();
}
//todo 向里面放list的数据
}
具体循环放怎么弄啊,老是一下把所有的数据都放在一个excel里面了
能否远程帮我一下啊,是在是没发解决
来加个Q
772316481
非常感谢啊
我用了你写的那个代码,没有数据啊
帮我远程看一下吧,先谢啦
#23
循环,一条一条的写入, 当到第501条的时候新建excel 然后到1001的时候在新建。。。以此类推 。 理论上是可行的。
如何获取存储501或者1001这个值呢
for(int i=0;i<list.size();i++){
if(i>500){
...
}
}