【发布时间】:2018-08-06 09:11:00
【问题描述】:
我有多个带有不同标题图块的 csv 文件,我想合并所有这些文件并保留组合标题标题。 我想我可以将 csv 覆盖到数组中,然后比较所有文件中的标题图块,然后合并 csv 文件。然而,似乎它得到了巨大的处理时间,因为那里有很多循环。如果有任何快速的解决方案,您能帮忙吗?
例子:
file1.csv
No,Series,Product,A,B,C,D,E
1, AAA, XX, a1,b1,c1,d1,e1
file2.csv
No,Series,Product,A,C,D,B,E,F,G
1, AAB, XX, a1,c1,d1,b1,e1,f1,g1
file3.csv
No,Series,Product,A,A1,A2,C,D,B1,B,E
1, AAC, XX, a1,a11,a21,c1,d1,b11,b1,e1
我预期的合并文件是: 合并.csv
No,Series,Product,A,A1,A2,B,B1,C,D,E,F,G
1, AAA, XX, a1,0,0,b1,0,c1,d1
1, AAB, XX, a1,0,0,b1,0,c1,d1,e1,f1,g1
1, AAC, XX, a1,a11,a21,b1,b11,c1,d1,e1
“列中不存在的数据将显示为“0”或“NA”等
【问题讨论】:
-
我会创建一个具有自定义属性的对象,如果它不存在,它将保存值“0”或“NA”。解析各种 csv 文件并创建您的对象,然后从中创建最终的 csv。你知道所有的“标题类别”吗?
-
编辑你的问题并展示你的代码,或者至少是一个足够的大纲。人们无法在不知情的情况下对您的算法提出改进建议。
-
我目前的想法我觉得不太好。 (1)将csv转换为数组(2)将数组的每个字符串转换为NSDictionary(3)一一比较然后创建新字符串添加NSMutableString然后导出到csv。 Normaly 我必须合并许多具有大行(超过 10K 行)的文件,这样非常慢。
-
A、A1 等列的顺序重要吗?还是只是按字母顺序排序?
-
实际上没有订单大师。但是我想要的是行值匹配(组合瓷砖)
标签: objective-c macos merge nsarray export-to-csv