我想创建一个Excel文件并写入数据就像用Java编写文本文件一样.我试图将文件扩展名更改.txt为.xls.但我想在Excel文件中加粗字母.我怎样才能做到这一点?
我尝试过使用JXL API,但每次创建标签时都要添加标签.不能编辑表的行和列吗?
San*_*ngh 81
//Find jar from here "http://poi.apache.org/download.html"
import java.io.*;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFRow;
public class CreateExlFile{
public static void main(String[]args) {
try {
String filename = "C:/NewExcelFile.xls" ;
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("FirstSheet");
HSSFRow rowhead = sheet.createRow((short)0);
rowhead.createCell(0).setCellValue("No.");
rowhead.createCell(1).setCellValue("Name");
rowhead.createCell(2).setCellValue("Address");
rowhead.createCell(3).setCellValue("Email");
HSSFRow row = sheet.createRow((short)1);
row.createCell(0).setCellValue("1");
row.createCell(1).setCellValue("Sankumarsingh");
row.createCell(2).setCellValue("India");
row.createCell(3).setCellValue("sankumarsingh@gmail.com");
FileOutputStream fileOut = new FileOutputStream(filename);
workbook.write(fileOut);
fileOut.close();
workbook.close();
System.out.println("Your excel file has been generated!");
} catch ( Exception ex ) {
System.out.println(ex);
}
}
}
Run Code Online (Sandbox Code Playgroud)
关于Apache POI的Excel生成的公平警告...(我知道这是一个老帖子,但重要的是如果有人像我刚才那样再看一遍)
它有一个内存泄漏问题,据说可以在2006年解决,但最近人们还在经历这个问题.如果你想自动生成大量的excel(即,如果你想生成一个单独的大文件,大量的小文件,或两者兼而有之),我建议使用不同的API.如果不是这样,或者增加JVM堆栈大小荒谬的地步,也许寻找到实习字符串如果你知道你不会真的有许多不同的字符串(合作虽然,当然,实习的字符串意味着如果你有大量的不同的字符串,你会有一个完全不同的程序崩溃内存问题.所以,在你走这条路之前考虑一下).
小智 6
File fileName = new File(".....\\Fund.xlsx");
public static void createWorkbook(File fileName) throws IOException {
try {
FileOutputStream fos = new FileOutputStream(fileName);
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("fund");
Row row = sheet.createRow(0);
Cell cell0 = row.createCell(0);
cell0.setCellValue("Nav Value");
Cell cell1 = row.createCell(1);
cell1.setCellValue("Amount Change");
Cell cell2 = row.createCell(2);
cell2.setCellValue("Percent Change");
workbook.write(fos);
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)