【发布时间】:2016-03-31 20:19:06
【问题描述】:
我正在尝试比较一行中数组的 0 索引中的值和下一行中的 0 索引中的值。想象一个 CSV,其中我在第一列中有一个唯一标识符,在第二列中有一个对应的值。
USER1, 1P
USER1, 3G
USER2, 1P
USER3, 1V
我想检查 [0] 的值下一行(或上一行,如果这样更容易)进行比较,如果它们相同(如示例中所示)将其连接到索引 1。也就是说,数据应该读作
USER1, 1P, 3G
USER2, 1P
USER3, 1V
在它被传递到下一个函数之前。到目前为止我有
private void csvParse(string path)
{
using (TextFieldParser parser = new TextFieldParser(path))
{
parser.Delimiters = new string[] { "," };
while (!parser.EndOfData)
{
string[] parts = parser.ReadFields();
if (parts == null)
{
break;
}
contact.ContactId = parts[0];
long nextLine;
nextLine = parser.LineNumber+1;
//if line1 parts[0] == line2 parts[0] etc.
}
}
}
有人有什么建议吗?谢谢你。
【问题讨论】:
-
如果结尾有一行
USER1, 1X,输出会是什么? -
@Eser 生成的报告是以所有相同的唯一标识符都连续写入的方式编写的。也就是说,如果 USER1 出现,它将全部出现在一个区域中,而不是在整个文档中随机出现。
标签: c# csv textfieldparser