我正在使用PHPExcel生成Excel文件。问题是,它不是以XML格式生成文件,而是以二进制格式生成。
$phpExcel = new PHPExcel();
$phpExcel->getProperties()->setTitle($worksheet_title);
$phpExcel->setActiveSheetIndex(0);
$worksheet = $phpExcel->getActiveSheet();
$worksheet->setCellValue('A1', 'Field');
// ...
$phpExcelWriter = PHPExcel_IOFactory::createWriter($phpExcel, 'Excel2007');
$phpExcelWriter->save('tmp/xxx');
由于我使用的是Excel2007编写器,它应该以可读的xml格式创建输出文件,但它是以二进制格式创建的。
答案 0 :(得分:1)
OfficeOpenXML文件 不 直接是人类可读的xml文件的gigantasaurus。它是一个包含XML文件集合的压缩存档。
解压缩.xlsx文件,然后你会发现一系列包含xml文件的文件夹。
这就是MS Excel在将文件保存为xlsx时生成的内容,也是PHPExcel生成的内容
您可以查看此链接,了解OfficeOpenXML standard
的完整详情