Tag: csv

XLSX到CSV内存不足错误

我发现很多解决scheme如何使用Java将XLSX转换为CSV文件,所有解决scheme都使用: XSSFWorkbook 。 我面临的问题是,这个stream可能是有太多的数据。 我只是不明白为什么,这个文件只有4MB。 码: // For storing data into CSV files StringBuffer data = new StringBuffer(); try { FileOutputStream fos = new FileOutputStream(outputFile); System.out.println("Getting input stream."); // Get the workbook object for XLS file XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream(inputFile)); System.out.println(" – Done"); // Get first sheet from the workbook XSSFSheet sheet = […]

使用macros从单元格中将文件名保存为CSV工作表

我有一个macros保存了我的工作簿的一个副本,但它保存为.xlsm,我需要它被保存为逗号分隔.csv文件types可以帮助我吗? 这里是我现在的macros Sub toCSV() Dim newWB As Variant Dim wb1 As Workbook Set wb1 = ActiveWorkbook With wb1 .SaveCopyAs ("C:\Users\sales\desktop\") & Range("A2").Text & ".xlsm" End With End Sub

Excel PowerQuery:数字列中的空值

我正在使用PowerQuery查询从CSV文件导入数据。 CSV文件中的一些单元格是空的。 当导入到PowerQuery中时,这些单元格出现错误“无法将值null转换为键入数字”。 该字段被(正确)标识为type = number。 但是,我真的只是想这些错误值只是空白条目,就像他们在原始文件。 “replace错误”只允许我将这些错误值更改为数字(它不会让空白或任何非数字值)。 任何想法如何让这些值只是空白(或空)?

保持Excel在打开/保存CSV时不会转换date

有没有办法在Excel中使用四位数年份来设置默认date格式? 我们的进程接收由外部进程(例如SAS,SPSS)生成的CSV文件并读入另一个应用程序。 有时需要打开,编辑和保存CSV,例如删除敏感数据列,更正exception值等。 挑战在于Excel读取CSV中的有效date(例如8/23/2013 ),将其转换为date并以两位数字显示。 所以当你保存它的时候,这些date被存储为两位数的年份,从而给我们自己带来了千年虫问题。 我知道不可能让Excel停止识别date(至less不是在不更改CSV文件的情况下,或者使用文本导入向导来为每列指定格式)。 但也许得到它的默认date格式使用四位数字年? 停止Excel自动将某些文本值转换为date

如何从Excel中转​​换后删除csv文件中多余的逗号

我有一个将excel文件转换为csv文件的下一个代码: Microsoft.Office.Interop.Excel.Application reportExcel = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbooks reportBooks = null; Microsoft.Office.Interop.Excel.Workbook reportBook = null; Microsoft.Office.Interop.Excel.Sheets reportSheets = null; Microsoft.Office.Interop.Excel._Worksheet reportSheet = null; try { reportBooks = reportExcel.Workbooks; reportBook = reportBooks.Open(excelFilePath); reportSheets = reportBook.Sheets; reportSheet = reportSheets.get_Item(1); if (File.Exists(csvtempFile)) { File.Delete(csvtempFile); } reportBook.SaveAs(csvtempFile, Microsoft.Office.Interop.Excel.XlFileFormat.xlCSVWindows, Type.Missing, Type.Missing, false, false); … } catch (Exception ex) { … } […]

创build可立即被Excel识别的CSV(美国和欧盟)

在许多欧盟国家,逗号“,”被用作小数点分隔符,而在美国是“。”。 用来。 CSV(逗号分隔值)文件应该使用逗号分隔单元格值。 但是,通常会使用制表符'\ t'或其他字符来代替。 有趣的是,如果您使用Microsoft Excel在欧盟国家使用逗号作为小数点分隔符保存一个.csv文件,Excel使用分隔单元格值的值不是转义的逗号,而是分号“;”。 在网上看起来,如果你在美国,Excel将使用适当的逗号保存.csv文件(我无法validation这一点)。 我试图find一种方法来创build一个csv文件,可以被Excel识别,无需用户操作,无论是在欧盟和美国。 下面是一个使用Excel和意大利语区域设置的示例 以上,保存为.csv(MS-DOS),转换为 foo;foo bar; foo'bar;"foo""bar"; foo,bar;foo.bar; foo:bar;"foo;bar"; foo/bar;foo\bar; "foo bar";foo|bar; foo;bar;foobar this is to make the empty line appear 根据当地的“列表分隔符”,这可能是不可能被正确识别的。 我读过新的Excel 2013需要sep=; 要设置为第一行才能正常工作。 这是一个丑陋的黑客,但它似乎也适用于Excel 2010(除了保存覆盖)… 上面的文字是否适合你,如果你把它保存为CSV文件? 有没有一个不太好的方式告诉Excel哪个字符是分隔符,而不需要用户设置? 谢谢。

用Excel格式写入CSV:Java

我想用csv格式编写一些数据,并使用Excel打开它。下面是我试图实现它的代码, public void writeOutput(String fileName,Map<String){ try { String jsonData="{"adjustments":[{"adjustmentType":"RENEWAL_OPTION_AMORTIZING_RENEWAL","rate":0.0400},{"adjustmentType":"AMORTIZATION_TERM_LESS_THAN_25_YEARS","rate":-0.0800}],"errorTypes":[],"premiumTaxs":[{"taxType":"STATE_TAX","taxPercent":1.3,"taxAmount":null,"taxJurisdictionName":"Florida"}],"renewalPremiums":[{"rate":0.8100,"rateDurationMonths":168,"sequence":1}],"totalInitialRate":0.8100,"rateName":"Standard National Monthly Non Refundable BPMI Rates","rateCardId":"NABM_NR","ratingInfoBaseRate":0.8500,"optimumPricing":false,"miPricingVO":null,"addressMatchCode":null}"; String dataID = "MyNewDataID"; OutputStreamWriter writer = new OutputStreamWriter( new FileOutputStream(System.getProperty("user.dir") + "\\test\\" + fileName + ".csv", true),"UTF-8"); BufferedWriter fbw = new BufferedWriter(writer); fbw.write(dataID + "," + jsonData); fbw.newLine(); fbw.close(); }catch (Exception e) { System.out.println(e.getCause()); System.out.println(e.getStackTrace()); } } 当上面的代码被执行,当我打开CSV文件使用Excel,所有的数据(逗号分隔)显示在不同的单元格 – […]

将单个显式标签转换为.CSV文件中的多个二进制标签

我有以下forms的.csv文件: NameOfFile, Type Example, Word Document; Picture; PDF; Example2, Word Document; Example3, Picture; 我想用一个程序把它转换成这种forms: Name of File, Word Document, Picture, PDF Example, 1, 1, 1 Example2, 1, 0, 0 Example3, 0, 1, 0 所以我们从明确地写下这个types,到具有显示types的二进制特性。 我认为必须有一些聪明的方式来做到这一点,因为我认为人们通常需要这样做。 我最好的做法是什么?

Python组合2个XLSX文件

我有两个我需要结合的XLSX文件。 他们都是Excel 2010文件(.xlsx),我所读的是空间分隔(我打开纠正)。 这两个文件将有相同的行数,行将排队; 例如row1,file1将对应于row1,file 2等…这些文件有很长的字段,所以我只是为了简单地显示模拟数据。 第一个文件的格式为: a 123 20 20141201 b 456 50 20141130 ….. 第二个文件的格式是: 20141201 20141130 … 所以我想输出是: a 123 20 20141201 20141201 b 456 50 20141130 20141130 … 我的代码在下面,但是似乎有两个问题: 首先,array3的输出格式不正确: 'a 123 20 20141201 \t\r\n', '20141201\n', 'b 456 50 20141130 \t\r\n', '20141130\n', …. 我怎样才能正确地连接这些以确保其他date戳在选项卡,换行符等之前…(\ t \ r \ n)? 其次,当我写这个数组到输出文件的行是不一致的: 第一行有1列中的所有内容(注意☺=白色方形符号,不知道它为什么会出现笑脸?): […]

Microsoft Jet数据库引擎无法打开文件c#

您好,我有一些问题阅读与Jet数据库引擎的CSV文件。 我得到这个消息: The Microsoft Jet database engine cannot open the file 'C:\Users\mikec\Desktop\'. It is already opened exclusively by another user, or you need permission to view its data. 我有权限访问此文件夹和文件。 我也尝试把我的Visual Studio项目,仍然得到相同的错误。 这是我的代码 string path = @"C:\Users\mikec\Desktop\Book1.csv"; string full = Path.GetFullPath(path); string file = Path.GetFileName(full); string dir = Path.GetDirectoryName(full); //create the "database" connection string string connString […]