我这个肯定可以
import org.apache.poi.hssf.usermodel.*;
import java.io.*;
import java.io.FileOutputStream;
import java.io.IOException;
import com.jspsmart.upload.*;
import java.util.*;public class WriteExcel{
String filename="";
FileOutputStream fos=null;
HSSFWorkbook wb=null;
HSSFSheet s=null;
HSSFCellStyle style=null;
HSSFRow row1=null;
HSSFCell cel1=null;
int position=0;//行纪录 BASE 0
public WriteExcel(){}
public WriteExcel(String path,String filename){
writePath(path,filename);
}
public void writePath(String path,String filename){
writeFileName(filename);
writePath(path);
}
public void writePath(String path){
try{
fos=new FileOutputStream(path + java.io.File.separator +filename);
wb=new HSSFWorkbook();
s=wb.createSheet();
style = wb.createCellStyle();
wb.setSheetName(0,"Sheet1"); //设置SHEET名称 BASE0以0开始
HSSFRow row=s.createRow((short)position);
HSSFCell cell=row.createCell((short)position);
cell.setEncoding(HSSFCell.ENCODING_UTF_16); //双字节汉字编码
cell.setCellValue(filename.substring(0,filename.indexOf(".")));
}catch(Exception e){
System.out.println(e.toString());
e.printStackTrace();
}
}
public void writeFileName(String filename){
this.filename=filename;
} public void writeData(String aRowStr){
writeData(String.valueOf(position+1),aRowStr,1);
} public void writeData(String aRowStr,int flag){
writeData("第"+String.valueOf(position+1)+"行",aRowStr,flag);
} public void writeData(String rowTitle,String aRowStr,int flag){
StringTokenizer tokenizer=new StringTokenizer(aRowStr,",");
String theToken="";
position=position+1;
row1=s.createRow((short)position);
int m=0; cel1=row1.createCell((short)m++);
cel1.setEncoding(HSSFCell.ENCODING_UTF_16);
cel1.setCellValue(rowTitle);
while(tokenizer.hasMoreTokens()){
theToken=tokenizer.nextToken();
cel1=row1.createCell((short)m++);
cel1.setEncoding(HSSFCell.ENCODING_UTF_16);
if(flag==0){
cel1.setCellValue(Integer.parseInt(theToken));
}else{
cel1.setCellValue(theToken);
}
}
} public void writeEnd(String End_Flag){
//ExcelData=="END" 表示文件写完毕
try{
if (End_Flag.equals("END")){
wb.write(fos);
fos.close();
}
}catch(Exception e){
System.out.println(e.toString());
e.printStackTrace();
}
}
public static void main(String[] args) {
WriteExcel sample=new WriteExcel(args[0],args[1]);
sample.writeData(args[2],0);
sample.writeEnd("END");
}
}
import org.apache.poi.hssf.usermodel.*;
import java.io.*;
import java.io.FileOutputStream;
import java.io.IOException;
import com.jspsmart.upload.*;
import java.util.*;public class WriteExcel{
String filename="";
FileOutputStream fos=null;
HSSFWorkbook wb=null;
HSSFSheet s=null;
HSSFCellStyle style=null;
HSSFRow row1=null;
HSSFCell cel1=null;
int position=0;//行纪录 BASE 0
public WriteExcel(){}
public WriteExcel(String path,String filename){
writePath(path,filename);
}
public void writePath(String path,String filename){
writeFileName(filename);
writePath(path);
}
public void writePath(String path){
try{
fos=new FileOutputStream(path + java.io.File.separator +filename);
wb=new HSSFWorkbook();
s=wb.createSheet();
style = wb.createCellStyle();
wb.setSheetName(0,"Sheet1"); //设置SHEET名称 BASE0以0开始
HSSFRow row=s.createRow((short)position);
HSSFCell cell=row.createCell((short)position);
cell.setEncoding(HSSFCell.ENCODING_UTF_16); //双字节汉字编码
cell.setCellValue(filename.substring(0,filename.indexOf(".")));
}catch(Exception e){
System.out.println(e.toString());
e.printStackTrace();
}
}
public void writeFileName(String filename){
this.filename=filename;
} public void writeData(String aRowStr){
writeData(String.valueOf(position+1),aRowStr,1);
} public void writeData(String aRowStr,int flag){
writeData("第"+String.valueOf(position+1)+"行",aRowStr,flag);
} public void writeData(String rowTitle,String aRowStr,int flag){
StringTokenizer tokenizer=new StringTokenizer(aRowStr,",");
String theToken="";
position=position+1;
row1=s.createRow((short)position);
int m=0; cel1=row1.createCell((short)m++);
cel1.setEncoding(HSSFCell.ENCODING_UTF_16);
cel1.setCellValue(rowTitle);
while(tokenizer.hasMoreTokens()){
theToken=tokenizer.nextToken();
cel1=row1.createCell((short)m++);
cel1.setEncoding(HSSFCell.ENCODING_UTF_16);
if(flag==0){
cel1.setCellValue(Integer.parseInt(theToken));
}else{
cel1.setCellValue(theToken);
}
}
} public void writeEnd(String End_Flag){
//ExcelData=="END" 表示文件写完毕
try{
if (End_Flag.equals("END")){
wb.write(fos);
fos.close();
}
}catch(Exception e){
System.out.println(e.toString());
e.printStackTrace();
}
}
public static void main(String[] args) {
WriteExcel sample=new WriteExcel(args[0],args[1]);
sample.writeData(args[2],0);
sample.writeEnd("END");
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货