在Java中创建Excel文件(Create Excel file in Java)

2019-06-26 16:43发布

我想创建一个Excel文件,并写入数据就像写与Java的文本文件。 我试图文件扩展名从改变.txt.xls 。 但我想在Excel文件粗体字。 我怎样才能做到这一点?

我已经使用JXL API尝试过,但每次我要创建一个标签的时间我要添加无标签。 可以将表的不Ø编辑行和列?

Answer 1:

//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);
        }
    }
}


Answer 2:

您可以使用的Apache POI ,用于创建本机二进制的XLS文件。

或者你可以使用JExcelApi的是另一个,和有点重量轻,只要我还记得,Java库,用于Excel中。



Answer 3:

关于Apache POI Excel的一代公平的警告......(我知道这是旧的文章,但如果有人看这件事是很重要的再喜欢我只是做了)

它有一个内存泄漏问题,这理应是解决了2006年,但人们最近颇有仍然在经历。 如果你想自动产生大量的Excel(即,如果你想生成一个单一的大文件,大量的小文件,或两者),我建议使用不同的API。 如果不是这样,或者增加JVM堆栈大小荒谬的地步,也许寻找到实习字符串如果你知道你不会真的有许多不同的字符串(合作虽然,当然,实习的字符串意味着如果你有大量的不同的字符串,你就会有一个完全不同的程序崩溃内存不足的问题。因此,考虑到你面前走这条路)。



Answer 4:

平面文件不允许提供元数据信息。

我建议写出包含您所需要的信息的HTML表,并让读取Excel它来代替。 然后,您可以使用<b>标签,你要求什么。



Answer 5:

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();
    }
}


Answer 6:

更改文件的扩展名以任何方式改变其内容。 扩展名是只是一个标签。

如果你想使用Java Excel电子表格的工作,在阅读了Apache的POI库。



Answer 7:

我创建了一个API来创建一个Excel文件更容易。

创建EXCEL -从模板创建的Excel

只需设置实例化时所需的值,然后调用执行(),它会根据你所期望的输出目录中创建。

但您使用此之前,你必须有一个Excel模板,这将是作为新创建的Excel文件的模板。

另外,你需要的Apache POI在项目的类路径。



Answer 8:

我曾经也JXLS :接收到的数据作为一个地图,并用正确的语法模板EXCEL,回到正确填充文件。 在每一个单元格中的数据必须与公众的可视性一个JavaBean。

它不是worws如果你必须在1个多表插入数据:在这种情况下,我使用的POI 。



Answer 9:

要创建一个电子表格,并使用格式化细胞POI ,请参阅使用字体例如,与用途:

font.setBoldweight(Font.BOLDWEIGHT_BOLD);

POI工作得很好。 有一些事情你不能做(例如创建VBA宏),但它会与宏读/写电子表格,这样你就可以创建一个合适的模板薄片,阅读与POI操纵它,然后写出来。



文章来源: Create Excel file in Java