当前位置: 首页 > 知识库问答 >
问题:

java - Java 读取 CSV 文件并将其写入指定 Excel 工作表?

戎鹏云
2023-12-11

Java怎么把某个csv文件,写到指定的excel的sheet里?

rt

共有2个答案

任昊阳
2023-12-11

问题可以拆解成两步,读取CSV,写入Excel:

//参考链接:https://www.grapecity.com.cn/developer/grapecitydocuments/excel-java/docs/ManageFileOperations/ImportandExportCSVFilepublic void ImportCSV(){    Workbook csvWb = new Workbook();    //打开需要导入的CSV文件    csvWb.open("resources/ImportCsv.csv");    Workbook wb = new Workbook();        //获取CSV数据的区域    IRange csvRange = csvWb.getWorksheets().get(0).getUsedRange();    //获取目标工作表的区域    IRange targetRange = wb.getWorksheets().get(0).getRange("A1:D10");    //把CSV数据复制到目标工作表区域中    csvRange.copy(targetRange);    wb.save("output/importCsv.xlsx");}
罗毅
2023-12-11

以下是一个使用Apache POI库将CSV文件数据写入Excel工作表的Java示例代码:

import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.List;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.xssf.usermodel.XSSFWorkbook;public class CsvToExcel {    public static void main(String[] args) throws IOException {        String csvFilePath = "path/to/csv/file.csv";        String excelFilePath = "path/to/excel/file.xlsx";        String sheetName = "Sheet1";        List<String[]> data = readCsvFile(csvFilePath);        writeToExcel(data, excelFilePath, sheetName);    }    public static List<String[]> readCsvFile(String filePath) throws IOException {        List<String[]> data = new ArrayList<>();        try (FileInputStream inputStream = new FileInputStream(new File(filePath))) {            int lineNum = 0;            String line;            while ((line = inputStream.readLine()) != null) {                String[] values = line.split(",");                data.add(values);                lineNum++;            }        }        return data;    }    public static void writeToExcel(List<String[]> data, String excelFilePath, String sheetName) throws IOException {        try (FileOutputStream outputStream = new FileOutputStream(excelFilePath)) {            XSSFWorkbook workbook = new XSSFWorkbook();            Sheet sheet = workbook.createSheet(sheetName);            int rowNum = 0;            Row row = sheet.createRow(rowNum++);            for (String[] values : data) {                for (int i = 0; i < values.length; i++) {                    Cell cell = row.createCell(i);                    cell.setCellValue(values[i]);                }                row = sheet.createRow(rowNum++);            }            workbook.write(outputStream);        }    }}
 类似资料:
  • 问题内容: 我正在读取2个csv文件:&。 我希望能够将CSV文件与进行比较。1)如果项目名称匹配,只需更新store_inventory中的数量。2)如果new_acquisitions具有不存在的新项目,则将其添加到中。 这是我到目前为止所做的,但是效果不是很好。我在需要添加taks 1 和 2的 地方添加了注释。 任何建议或执行上述任务的代码都将非常有用!谢谢。 再次感谢任何帮助。=] 问题

  • 本文向大家介绍python3 循环读取excel文件并写入json操作,包括了python3 循环读取excel文件并写入json操作的使用技巧和注意事项,需要的朋友参考一下 文件内容: excel内容: 代码: 结果: 补充知识:Python mysql数据 读取时间参数 for循环写入Excel文件 最近在利用Python 实现自动化表报时,有个功能是mysql的业务时间是读取模板文件的时间参

  • 问题内容: 我需要读取文件路径为“ C:\ file.pdf”的pdf文件,并将其写入outputStream。最简单的方法是什么? ................................................... ................................................... 问题答案: import java.io.*; 到目前为止

  • 问题内容: 我想用3列N行从Java读写Excel文件,在每个单元格中打印一个字符串。谁能给我简单的代码片段吗?我是否需要使用任何外部库,或者Java是否内置支持? 我要执行以下操作: 问题答案: Apache POI可以为你做到这一点。特别是HSSF模块。该快速指南是最有用的。这是你想做什么的方法-专门创建一张纸并将其写出来。

  • 问题内容: 我有一个带有字符串键和字符串值的哈希图。它包含大量键及其各自的值。 例如: 我想将此哈希图写入一个csv文件,以便我的csv文件包含以下行: 我在这里使用supercsv库尝试了以下示例:http ://javafascination.blogspot.com/2009/07/csv-write- using-java.html 。但是,在此示例中,您必须为要添加到csv文件的每一行创

  • 目前,我只能阅读一个excel文档,并用我得到的代码编写相同的文档。现在我想读取多个excel文档并将数据写入其中。现在我得到了一个清晰的代码,这样做到一个文档,但这不是我想要的。我理解我目前得到的代码的结构,所以我更喜欢继续使用它。如何使用函数和函数来实现这一点? 这是我到目前为止所拥有的: 不是很好的编码...但它有效...