Tag: CSV CSV的

python csv将所有行格式化为一行

我是一个csv文件,我想获得一列中的所有行。 我试图导入到MS Excel或格式与Notedpad ++。 但是,每次尝试都会将一段数据视为新行。 如何使用pythons csv模块格式化文件,以便删除string“BRAS”并更正格式。 每一行都在一个引号和分隔符之间被find|更新: "aa|bb|cc|dd| ee|ff" "ba|bc|bd|be| bf" "ca|cb|cd| ce|cf" 以上是3行,但我的编辑看到他们5行或6等等。 import csv import fileinput with open('ventoya.csv') as f, open('ventoya2.csv', 'w') as w: for line in f: if 'BRAS' not in line: w.write(line) NB当我尝试在python中使用时遇到unicode错误。 return codecs.charmap_decode(input,self.errors,decoding_table)[0] UnicodeDecodeError: 'charmap' codec can't decode byte 0x8f in position 18: character maps to <undefined>

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而不是逗号作为分隔符,但同样的事情会发生,即。 选项卡不会被用作文件打开时的分隔符

编写batch file时,发出“调用”.csv文件

所以…这是我的问题。 原谅我,我在编码方面相当缺乏经验,但我试图为我的公司工作。 我们正在寻找一些方法来通知用户电子邮件中断时,Gmail发生故障,所以我find了一个程序“布拉特”这是通过我们的SMTP服务器做到这一点。 我已经通过他们的支持文件和谷歌,但似乎不能find一个如何在这个。 最好的方法(我知道的?)运行blat,是通过创build一个.bat文件与执行它需要做的。 对于函数(电子邮件中的to:部分),我想让它调用一个excel或csv文档,其中包含电话号码。 有没有办法做到这一点?

处理CSV文件从Excel到MySQL生成“不正确的string值”错误

我已经通过博客,Google和堆栈溢出进行了大量search。 我还没有find我的问题的工作解决scheme。 在我的PHP应用程序中,它允许用户下载一个csv模板(包含标题),以便将数据导入到系统中。 除非在CSV文件中使用特殊/外部字符(Umlaut,Acute,Grave)来导入其中一行,否则一切都会很好。 用户正在下载CSV,然后在Excel中打开它(在安装了Office的大多数系统上是默认的)。 从我看到和理解的时候,他们添加到他们想要导入的文件的一切,并单击保存在Excel中,它不正确的编码。 一旦他们上传更改后的文件,PHP将迭代CSV插入数据到MySQL数据库中,则会失败,如第1行“无法更新logging1366:不正确的string值:'\ x9Arn's …'列'rawContents' 。 我不是在寻找像“不要使用Excel”的解决scheme,因为这不是一个选项。 我正在寻找一个解决scheme来获取上传的文件,并确保编码设置为UTF-8,以便正确读入数据库。 目前我正在捕捉exception,如果它包含错误“不正确的string值”我输出一个友好的消息,用户有无效的数据,检查编码,然后再试一次。 我希望能够处理他们的CSV无论和无效数据行(如果我不能读取它)将被忽略和存储为我所谓的“错误行”(任何行包含一个错误(用户input无效通过validation的列),他们可以看到什么行,为什么,并导出另一个只包含错误的行的CSV) 我希望这不是太混乱或不清楚。 我find了一种方法来检测一个非UTF8字符的行,使用以下内容: function utf8_clean($str, $ignore = true) { return iconv('UTF-8', 'UTF-8//' . (($ignore) ? 'IGNORE' : 'TRANSLIT'), $str); } function contains_non_utf8($str) { return (serialize($str) != serialize(utf8_clean($str))); } 如果有一些方法来修复编码,并获得正确的字符编码来存储它,那就太棒了。 我想要做的第二个select是我提到的“错误行”,所以如果我不能以正确的编码得到它,我想存储它导出“错误行”CSV文件来解决这些错误。 但我不知道如何存储该行的“原始”包含,以允许将其导出为CSV中的错误行。 请随时向我提出想法,我可以做些什么。 我想过的一个select是支持Excel文件导入,因为它似乎保留UTF-8编码保存,如果设置在模板文件,但我真的很想看到仍然支持CSV的方式。 我试图用“macroman”来获取数据,看起来非常有效,但是也遇到了这个问题。 现在我有一个try / catch语句类似于: try { $this->saveImportRow($array) } catch […]