2010-10-06 133 views
17

有没有一种方法来转换CSV文件到excel文件在通过Apache请求/的.htaccessCSV至Excel转换

+3

请澄清你的意思。你的意思是使用内容类型标题伪造一个excel文件,或者实际上转换内容? – 2010-10-06 16:39:29

+0

我看不出将CSV转换为XLS有什么好处,除非您要进行一些基于样式的更改,放入宏或适合您为什么需要XLS文件的帐单。这就像你已经开始减少文件的可移植性。 – Incognito 2010-10-07 14:06:23

+0

@Incognito您希望从CSV转换为XLS的原因之一是iOS上的办公室移动设备不支持CSV文件。因此,如果某人能够在手机上查看通过电子邮件发送的报告文件,则必须采用excel格式。 Apple的Numbers电子表格程序支持它们,但Office Mobile不支持。 – Ricky 2014-09-05 15:36:21

回答

65

使用PHPExcel

include 'PHPExcel/IOFactory.php'; 

$objReader = PHPExcel_IOFactory::createReader('CSV'); 

// If the files uses a delimiter other than a comma (e.g. a tab), then tell the reader 
$objReader->setDelimiter("\t"); 
// If the files uses an encoding other than UTF-8 or ASCII, then tell the reader 
$objReader->setInputEncoding('UTF-16LE'); 

$objPHPExcel = $objReader->load('MyCSVFile.csv'); 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); 
$objWriter->save('MyExcelFile.xls'); 
+0

我刚刚为此确切目的下载了phpexcel。感谢这个简洁的例子,它帮助我更快地工作。 – billynoah 2014-06-18 23:00:18

+0

感谢您的回答。 – Adeel 2017-01-23 11:35:28

0

是的,因为Apache是​​开源的,你可以修改的.htaccess解析器调用库将您的CSV文件转换为Excel文件。但我不认为这是你要找的。 :-)。

我认为你真正需要的是一个动态网站。然后,您可以使用PHP或任何支持的语言来执行您需要执行的操作。

是这样的: http://www.westwideweb.com/wp/2009/01/12/convert-csv-to-xls-excel-in-php/

0

有一个在SourceForge上的一个项目,做这种转换:

http://sourceforge.net/projects/py-csv2xls/

但对于转换需要在apache中创建一个动态页面(在python,php ...)

+0

最后更新时间:2015-08-04但是这个项目似乎在互相干扰。 – AnthonyB 2017-10-20 12:37:35