Tag: Excel excel

如何在Laravel 4.2上configuration和使用Box Spout

我需要在Laravel 4.2上configuration和使用Box Spout,但是,库不起作用。 我运行命令来安装Composer依赖关系: composer require box/spout 但是,代码不起作用: $writer = WriterFactory::create(Type::XLSX); // for XLSX files $filePath = public_path() . "/relatorios/test.xlsx"; $writer->openToFile($filePath); $singleRow = ['No'=>1,'Nama'=>'Bayummic','Nilai'=>11,'Nim'=>14140101]; $writer->addRow($singleRow); // add a row at a time $writer->close(); 错误信息: [2016-12-07 17:35:38] production.INFO: D:\Projetos\Testes\LaravelQueues\public [] [] [2016-12-07 17:35:38] production.ERROR: exception 'Box\Spout\Common\Exception\IOException' with message 'Cannot perform I/O operation outside of the base […]

生成一个可以通过excel打开的CSV文件

我在PHP中用fputcsv函数生成一个CSV文件。 一切工作正常,除了每行是Microsoft Excel中的一列数据。 有什么我可以添加或replace每个数据,以便它可以打开列每个数据? $output = fopen('php://output', 'w'); foreach(…){ fputcsv($output, $csv_data); CSV内容就像 2017-01-06 14:51:15,1,2 2017-01-06 14:50:08,3,4

如何使用PHP将* .xlsb转换为数组或* .csv

我试图将*.xlsb文件转换为php array或*.csv文件(或至less*.xls )。 我试图使用PHPExcel ,但看起来不能识别这个文件里面的东西。 我注意到,您可以将*.xlsb文件重命名为*.zip文件,然后使用命令行unzip *.zip其unzip *.zip 。 在此之后,您将获得与sheet1.bin文件的下一个文件夹: 看起来像这个文件应该包含Excel单元格值,但我仍然无法使用PHPExcelparsing它。 有人可以帮我parsing*.xlsb文件甚至可以*.xlsb获取信息吗? 或者也许有可能parsing这个sheet1.bin文件?

Java – Eclipse从SQL查询到Excel

从每个返回的logging中获取我希望第5行的SQL查询的结果。 我想将数据导出到Excel电子表格中,从第二行开始(我有标题)。 我的SQL逻辑显然是现在,因为我得到的第一个结果增加了十三倍的行和列,虽然它是正确的第二行开始,只出去了13列。 第二个结果以这种方式重复,每个连续的结果也一样。 (rs.next()){for(int i = 0; i <13; i ++){ package process; import java.util.Scanner; import java.io.*; import java.sql.*; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFCell; public class Sec_Completions { public static void main(String[] args) { Sec_Completions obj_Sec_Completions=new Sec_Completions(); obj_Sec_Completions.Check_Data(); } public void Check_Data() { Scanner scanner = new Scanner(System.in); System.out.println("Enter the beginning […]

防止MS Excel用PHP 5.3剥离前导零

我在使用PHP生成的CSV文件中有以下示例行。 当我cat这个文件时,这是我所看到的: 541787,271561,"04/01/2013 09:26:35",18801872,Many,"PINSTRIPE JACKET",18806821872,75.00,GBP,1,0078,5051916991872 但是,当我在MS Excel中打开这个文件时,“0078”已经被改为“78” – 所以MS Excel已经把它自己去除了前导零。 它还将EAN13号(在L列中)转换为指数。 在PHP代码方面,我正在输出文件到浏览器,下面的代码,它主要工作,但我想知道是否有一种方法来控制剥离前导零与PHP? // set the headers header('Content-Type: application/csv'); header('Content-Disposition: attachment; filename=_report_' . date('Ymd-His') . '.csv'); header('Pragma: no-cache'); echo $report->getCSVOutput(); exit;

excel utf-8 csv导出和分隔符

所以我做了这个(我使用Drupal 6): while(@ob_end_clean()); drupal_set_header("Content-type: text/csv;"); drupal_set_header("Cache-Control: no-store, no-cache"); drupal_set_header("Content-Disposition: attachment; filename=translations.csv"); print chr(255) . chr(254) . mb_convert_encoding($output, 'UTF-16LE', 'UTF-8'); exit; 导出utf-8字符的CSV。 当我导入到excel中时,utf-8字符将正确显示。 问题是,excel不会parsing分隔符,即逗号将全部显示在一列中,而不是用作打开文件时的分隔符。 有没有办法做到这一点,当我打开它,逗号将被用作分隔符? csv中的一行代码如下: $output .= '"'.str_replace('"', '""', $id).'","'.str_replace('"', '""', $source).'","'.str_replace('"', '""', $translation) . '"'; 我试图使用制表符\ t而不是逗号作为分隔符,但同样的事情会发生,即。 选项卡不会被用作文件打开时的分隔符

parsingCSV文件

我想把我的xls文件转换成csv,并parsing它在PHP中 这里是采样转换后的cvs Windows转换,用逗号分隔 DFRWR2496W/BND*,,2.65 ,2.52 ,3.98 ,910,856,1126, DFWR0006-RD.50W,,2.43 ,2.31 ,3.65 ,380,331,578, DFWR0006-RD.75W,,3.50 ,3.33 ,5.25 ,490,419,775, DFWR0006-RD1.0W,,4.44 ,4.22 ,6.66 ,610,520,972, 在PHP我正在试图将xxxx.csv文件作为 $ file_handle = fopen(“price.csv”,'r'); while(!feof($ file_handle)){$ line_of_text [] = fgetcsv($ file_handle,1024,“\ r”); } fclose($ file_handle); 返回$ line_of_text [0]; 不过$ line_of_text [0]给了我 ["DFRWR2496W\/BND*,,2.65,2.52,3.98,910,856,1126","DFWR0006-RD.50W,,2.43,2.31,3.65,380,331,578","DFWR0006-RD.75W,,3.5,3.33,5.25,490,419,775","DFWR0006-RD1.0W,,4.44,4.22,6.66,610,520,972","DFWR0006-RD1.0Y,,4.44,4.22,6.66,610,520,972","DFWR0006W\/BND,,2.47,2.35,3.71,385,335,586","DFWR0007-RD.50W,,4.54,4.31,6.81,575,483,945","DFWR0007-RD1.0W,,5.28,5.02,7.92,675,568,1105","DFWR0007-RD1.0Y,,5.28,5.02,7.92,675,568,1105","DFWR0007W\/BND,,2.55,2.42,3.83,385,333,593","DFWR0008BD-RD.50W,,4.96,4.71,7.44,825,725,1229","DFWR0008-CSH1.0W,,4.62,4.39,6.93,1075,982,1451","DFWR0008-RD.50W,,4.81,4.57,7.22,1075,978,1467","DFWR0008-RD.75W,,4.81,4.57,7.22,1075,978,1467","DFWR0008-RD1.0W,,4.59,4.36,6.89,1075,982,1449","DFWR0008-TRD7.0W,,5,4.75,7.5,1075,974,1482","DFWR0008W\/BND,,2.23,2.12,3.35,460,415,642","DFWR0012BD-RD.50W,,4.56,4.33,6.84,580,488,951","DFWR0012P-RD.50TTR***,,4.56,4.33,6.84,835,743,1206","DFWR0012-RD.50TTR,,4.31,4.09,6.47,725,638,1076","DFWR0012-RD.50TY,,5.29,5.03,7.94,725,618,1156","DFWR0016W,,2.1,2,3.15,575,533,746","DFWR0028-PRD10x6.5W,,4.05,3.85,6.08,1000,918," 现在不是一条线 DFRWR2496W/BND*,,2.65 ,2.52 ,3.98 ,910,856,1126, 看来它可能只有1024个字符? 我想如何parsing它,就像在Excel中显示的那样

通过PHP将Mysql表格数据导出到Excel:数据在Excel中无法正确显示

我需要从Mysql表“tblinfoaanvraag”中导出数据(请参阅表格的图片: http ://s29.postimg.org/qeqp43z4n/mysql.png) 我有一个正确的查询工作代码,它触发一个Excel下载和数据在文件中。 但是,Excel文件中的数据仍被格式化为sql查询结果,并且标题(字段名称)仅显示为“Array”。 所以我现在有两件事情要做:将sql结果格式化为.csv文件中的单元格,而header / table字段名称应该正确显示,而不是“Array”。 下面是下载的Excel文件的截图: http : //s13.postimg.org/p0rcehehj/excel1.png 代码: <?php if(isset($_POST['InfoaanvragenDownloaden'])) { try { // Variables for later use $header=""; $data=""; //connection $sHost = "localhost"; $sUser = "root"; $sPassword = ""; $sDatabase = "corbati"; $link = @mysqli_connect($sHost, $sUser, $sPassword, $sDatabase) or die("Oop, dbase is gone!"); //create query to select as data […]

使用PHPExcel将多个xls的表单转换为csv

我正在使用下面的代码将xls文件转换为csv。 这适用于第一张表,但我有几个需要做的。 这些表将始终是相同的名称。 有没有做所有的床单,而不是做第一个活动的。 require_once 'PHPExcel/Classes/PHPExcel/IOFactory.php'; $excel = PHPExcel_IOFactory::load("all-euro-data-2015-2016.xls"); $writer = PHPExcel_IOFactory::createWriter($excel, 'CSV'); $writer->setDelimiter(";"); $writer->setEnclosure(""); $writer->save("test123.csv");

csv文件坏了

/* generate csv content */ while($res = mysql_fetch_assoc($query)) { /* If two or more columns of the result have the same field names, the last column will take precedence. */ for($i=0; $i<mysql_num_fields($query);$i++) { $data = $res[mysql_field_name($query,$i)]; $data = trim( preg_replace( '/\s+/', ' ', $data ) ); echo "\"".$data."\";"; } echo "\r\n"; } 以下代码旨在删除多余的空格或换行符,并生成一个csv文件。 我的问题是在某些工作站上,csv文件显示正确,而在其他工作站上显示不正确,尽pipe所有工作站都具有相同的区域和语言设置。 还有什么我应该检查或使用不同的代码来生成适当的csv文件,清理隐藏的空间或新行? […]