数据的Java Bucketing

数据的Java Bucketing,java,vector,buckets,Java,Vector,Buckets,我有一组记录(比如1000条)驻留在平面文件(.txt)中。我需要把它们提取出来放进桶里。每个存储桶的上限为300条记录。这意味着我需要4个桶。我需要把它们打印成excel表格。每次我按下盖子,我都要打印桶号 例如: 桶1 记录1 建议2 记录300 水桶2 记录301 记录302 。。。 -rec 600 桶3 等等。什么是最有效的方法? 以下是我正在做的: int lim = 300; if(vector.size()>lim){ n = Math.ceil((

我有一组记录(比如1000条)驻留在平面文件(.txt)中。我需要把它们提取出来放进桶里。每个存储桶的上限为300条记录。这意味着我需要4个桶。我需要把它们打印成excel表格。每次我按下盖子,我都要打印桶号

例如:

  • 桶1

    • 记录1
    • 建议2
    • 记录300
  • 水桶2

    • 记录301
    • 记录302
    • 。。。 -rec 600
  • 桶3

等等。什么是最有效的方法? 以下是我正在做的:

int lim = 300;

if(vector.size()>lim){
    n = Math.ceil((double) (vector.size() / 300.0));
}else{
    n=1;
}

//I'm meant to hard-code the bucket names
String[] name = {"Bucket1","Bucket2","Bucket3","Bucket4"};

for(int j=0; j<n;j++){
  buf.append("\n\t\t Name:"+name[0]);
  for(int i=0; i<size;i++){
    if (i > 0 && i < lim) {
      buf.append(",");
    }
    if (i < lim) {
      buf.append("\n\t\t\t\tP:" + vector.get(i));
    }           
  }
  size = size - lim;    
}
int-lim=300;
if(vector.size()>lim){
n=Math.ceil((double)(vector.size()/300.0));
}否则{
n=1;
}
//我打算硬编码桶名
字符串[]名称={“Bucket1”、“Bucket2”、“Bucket3”、“Bucket4”};

对于(int j=0;jbuf中有什么?它是哪个对象?您是否尝试创建一个coma分离值文件?查看。在Java中,运算符是百分比符号(%)。对不起,这里的模有什么用呢?它返回整数除法后剩下的值…你有4个存储桶,所以你可以计算一行的哈希代码,并生成哈希代码%4,以获得该记录应该到达的存储桶的索引。这只是简单的哈希分区。但不会将300条记录考虑在内。如果你面临这个问题,请使用bucket已经满了,你可以重新刷新或只是随机把它放到另一个桶里。我太老了,不能做家庭作业…只是简化了实际问题。buf只是StringBuffer。是的,我正在尝试创建一个csv文件。