开始时,我计算逗号数量,如:
stream.forEach(csvLine -> {
int commaCounter = countMatches(csvLine, ",");
if (commaCounter != FIELDS_IN_CSV - 1) {
// Alert
}
但是我发现(谢谢bug),逗号被撇号包围时是一个合法字符,比如“this is one,value”
。
我寻找了一个很短的方法来解决它,但没有找到任何东西(使用openCsv库,如果有帮助的话)。
当然,我可以迭代,将撇号*入队/出队到一个堆栈中,并计算单独的逗号。这里有一个短的方法吗?
一个简单的自己动手解决方案是:
int getFieldCount( String csvLine )
{
char[] ch = csvLine.toCharArray();
int len = ch.length, pos = 0, commaCounter = 0;
while ( pos < len )
{
char c = ch[pos];
if ( c == ',' ) commaCounter++;
else if ( c == '"' )
{
pos++;
while ( pos < len && ch[pos] != '"' ) pos++; // skip everything until the end of the string (or line)
}
pos++;
}
return commaCounter;
}
类似于上面的东西应该起作用;)
我试图计算每列CSV的总和。我能够读取csv在js使用readfile方法。我也能够循环使用它,并将数据解析成对象数组。现在我只是想出一种方法来把所有的列元素加起来,这就是我正在努力的地方。我的csv对象是对象格式的数组,看起来像这样。 CSV输入如下所示: 我想补充18 19 20最终答案应该是这样的[57,518]。 到目前为止,我已经完成了这些工作,我只需要帮助来改进这一点,并在JS中按列添
我通常有更多面向代码的问题,但我需要有关CSV数据库的帮助。基本上,我需要将其格式更改为Fname;Lname;email.问题是我有13000行,所有数据都在1列中,分隔符是“;”。我使用了不同的CSV文件编辑器,他们都将数据放在1列中,所以我无法更改这些列的顺序...我无法从原始数据库中重新提取数据。那么有没有解决这个问题的方法,或者我被搞砸了? 所以我从一个CSV文件开始,它有“;”在每行的
从2.7迁移后,我在Python 3环境中很难获得行数。几次尝试后,返回的行数为1。我如何绕过一个DeprecationWarning:'U'模式在python 3中被弃用? 在使用Python3的情况下,我尝试了以下方法,但我仍然坚持使用1。
我的教授让我编写一个程序来读取. csv文件(778行(包括头行),8列)。我需要:1.编写一个方法来接收文件的名称作为其参数,然后打印文件中的行数。 公共无效printNumberOfLinesInFile(字符串文件名) public void printNumberOfPrivateNonPrivateCollegesInFile(字符串文件名) public void printMostE
我正在处理一个csv文件,在此之前,我使用下面的代码获取行数。 代码是在这个链接中给出的帮助下编写的。但是,total_rows与csv文件中的实际行数不匹配。我已经找到了一个替代方案,但想知道为什么这是不正确的工作?? 在CSV文件中,有大量文本的单元格,我必须使用编码来避免读取CSV文件时出错。 感谢您的帮助!
问题内容: 我正在编写一个脚本,以将带有标头的大.xlsx文件减少到一个csv中,然后根据标头名称仅写有所需列的新csv文件。 我得到的错误是最后一部分代码,它说 我确定我忽略了一些愚蠢的事情,但是我已经阅读了熊猫网站上的to_csv文档,但我仍然感到茫然。我知道我使用了不正确的to_csv参数,但我似乎无法理解我猜的文档。 任何帮助表示赞赏,谢谢! 问题答案: 选择特定列的方法是这样的-