public tt() throws Exception{
String path="c:\\zhbx";
File lj=new File(path);
if(!lj.isDirectory()){
lj.mkdir();
}
File f = new File("c:/zhbx/结果.xls");
f.createNewFile();
WritableWorkbook wwb = Workbook.createWorkbook(new FileOutputStream(f));
WritableSheet ws = wwb.createSheet("Sheet1",0);
Label labelC;
int row=0;//行
int col=0;//列
/**
* 首行
*/
String[] strings={"评价人","1","2","3","4","5","6","7","8","9","10",
"11","12","13","14","15","16","17","18","19","20","21","22","23","24","25",
"26","27","28","29","30","31","32","33","34","35","36","37","38","39","40",
"41","42","43","44","45","46","47","48","49","50","51","52","53","54","55",
"56","57","58","59","60","61","62","63","64","65"
};
for(int k=0;k<strings.length;k++){
labelC =new Label(k, 0, strings[k]);
ws.addCell(labelC);
} /**
* 列显示问卷编号SN
*/
int j=1;
int i=0;
String sql="select distinct r_sn from results";
List<String> userNameList=new ArrayList<String>();
dbcon db=new dbcon(sql);
while(db.getRs().next()){
for (i =0; i <= db.getNumColumns(); i++) {
if(i!=db.getNumColumns()){
labelC=new Label(i,j,db.getRs().getString(i+1));
ws.addCell(labelC);
}
}
j++;
}
/**
* 行输出选择结果
*/
db=new dbcon(sql);
while(db.getRs().next()){
userNameList.add(db.getRs().getString(1));
}
String userSN=null;
int h=1;
int l=0;
int n=0;
for (int u = 0; u < userNameList.size(); u++) {
userSN=userNameList.get(u);
row++;
col++;
sql="Select r_result from results where r_sn='"+userSN+"' order by r_sn";
db=new dbcon(sql);
while(db.getRs().next()){
for (l=0; l <= db.getNumColumns(); l++) {
if(l!=db.getNumColumns()){
labelC=new Label(h,l+1,db.getRs().getString(l+1));
ws.addCell(labelC);
}
}
h++;
} }
wwb.write();
wwb.close();
}数据库字段
r_id,r_sn(编号),r_result(选择结果),r_order(题号)
输出结果时候r_result 在excel不换行 求高手
String path="c:\\zhbx";
File lj=new File(path);
if(!lj.isDirectory()){
lj.mkdir();
}
File f = new File("c:/zhbx/结果.xls");
f.createNewFile();
WritableWorkbook wwb = Workbook.createWorkbook(new FileOutputStream(f));
WritableSheet ws = wwb.createSheet("Sheet1",0);
Label labelC;
int row=0;//行
int col=0;//列
/**
* 首行
*/
String[] strings={"评价人","1","2","3","4","5","6","7","8","9","10",
"11","12","13","14","15","16","17","18","19","20","21","22","23","24","25",
"26","27","28","29","30","31","32","33","34","35","36","37","38","39","40",
"41","42","43","44","45","46","47","48","49","50","51","52","53","54","55",
"56","57","58","59","60","61","62","63","64","65"
};
for(int k=0;k<strings.length;k++){
labelC =new Label(k, 0, strings[k]);
ws.addCell(labelC);
} /**
* 列显示问卷编号SN
*/
int j=1;
int i=0;
String sql="select distinct r_sn from results";
List<String> userNameList=new ArrayList<String>();
dbcon db=new dbcon(sql);
while(db.getRs().next()){
for (i =0; i <= db.getNumColumns(); i++) {
if(i!=db.getNumColumns()){
labelC=new Label(i,j,db.getRs().getString(i+1));
ws.addCell(labelC);
}
}
j++;
}
/**
* 行输出选择结果
*/
db=new dbcon(sql);
while(db.getRs().next()){
userNameList.add(db.getRs().getString(1));
}
String userSN=null;
int h=1;
int l=0;
int n=0;
for (int u = 0; u < userNameList.size(); u++) {
userSN=userNameList.get(u);
row++;
col++;
sql="Select r_result from results where r_sn='"+userSN+"' order by r_sn";
db=new dbcon(sql);
while(db.getRs().next()){
for (l=0; l <= db.getNumColumns(); l++) {
if(l!=db.getNumColumns()){
labelC=new Label(h,l+1,db.getRs().getString(l+1));
ws.addCell(labelC);
}
}
h++;
} }
wwb.write();
wwb.close();
}数据库字段
r_id,r_sn(编号),r_result(选择结果),r_order(题号)
输出结果时候r_result 在excel不换行 求高手
解决方案 »
- JAVA里如何获得指定大小字体的字符转成为点阵信息?
- 毕设的问题求教
- StringBuffer的replace怎么用,三个参数表示什么意思?
- 关于线程的问题
- 关于嵌套类的问题!!!进来看看~!!
- 在eclipse3中如何使用jdk5的特性,如annotation、for in集合、泛型等???
- 如何把 .class 文件打包成执行文件 .jar
- 如何在netBeans3.5.1中创建项目并添加已有的java文件到项目中?
- 高分求救:怎样画时间段gantt chart???(解决了还有300分送)
- 请问Attribute和Property是否都翻译为属性?
- 新手求指点~~
- 请教:NullPointerException问题
bSv4jO c a d a c d a d
4U8P20
查询问卷编号的时候,要带上order by
sql="Select r_result from results where r_sn='"+userSN+"' order by r_sn";查询答案的时候order by 的字段应该是问卷编号而不是r_sn.
输出答案时
for (int u = 0; u < userNameList.size(); u++) {
//输出完一个用户的答案后,这个行应该重新就成1
userSN=userNameList.get(u);
row=1;
sql="Select r_result from results where r_sn='"+userSN+"' order by r_order";
db=new dbcon(sql);
while(db.getRs().next()){ labelC=new Label(h,row,db.getRs().getString(1));
ws.addCell(labelC);
row++;
}
h++;
} }