使用 java 生成的 CSV 文件在以 Excel 工作表格式打开时,仅针对少数几个单元格的日期



我写了以下代码:

CSVFormat csvFileFormat = CSVFormat.DEFAULT.withRecordSeparator("n").withEscape('\');
FileWriter fileWriter = new FileWriter(csvFile);
CSVPrinter csvFilePrinter = new CSVPrinter(fileWriter,csvFileFormat);
function printCSV(String fieldValue,String dataType,CSVPrinter csvFilePrinter){
    if(dataType!=null && "date".equals(dataType)){
                    fieldValue = this.dateFormatter.format(new SimpleDateFormat("yyyy-MM-dd").parse(fieldValue));
    }
    csvFilePrinter.printRecord(fieldValue);
}

在 Excel 工作表中打开 csv 文件时,只有少数单元格具有日期格式。我不想格式化日期,并希望将所有单元格视为字符串。我该怎么做?

printCSV(..)方法中的if块设置日期格式。您可以将其删除:

function printCSV(String fieldValue, String dataType, CSVPrinter csvFilePrinter)
{
    csvFilePrinter.printRecord(fieldValue);
}

而且,如您所见,您可以删除printCSV(..)方法并直接使用csvFilePrinter.printRecord(fieldValue);

如果您希望Excel将所有单元格视为字符串,而不是自动格式化日期,以便您拥有自己的格式" yyyy-MM-dd",则应查看此内容

相关内容

  • 没有找到相关文章

最新更新