0

我有一个数据表,我想使用这个数据表创建一个文本文件。我希望新创建的文本文件的每一行都是唯一的。如果有重复行,则应在两行(重复行)中添加 *

我正在使用以下代码:

 Dim str As String
            For Each row As DataRow In dataTable.Rows
                str += row(1)  ' This is text data            
                str += "<br/>"
            Next

请建议我如何使行独一无二。

谢谢

4

1 回答 1

1

在我的示例中,我使用了一个包含数据的数组,但只需将数组部分替换为您的 DataTable 就可以了。基本上,您使用 DataTable 信息构建一个字符串列表,然后使用 LINQ 检查该数据是否已经存在一次或多次。

    Dim data As String() = {"A", "B", "C", "D", "E", "A", "E", "F", "G", "H", "A", "A", "B", "X", "Y", "Z"}
    Dim processedData = New List(Of String)
    Dim rowData = String.Empty
    Dim results = New StringBuilder()

    For Each row As String In data
        processedData.Add(row)
    Next

    For Each row As String In processedData
        rowData = row

        If (processedData.Where(Function(d) d = rowData).Count = 1) Then
            results.Append(rowData)
            results.Append("<br />")
        Else
            results.Append(rowData)
            results.Append("*")
            results.Append("<br />")
        End If

    Next

结果字符串是

A*<br />
B*<br />
C<br />
D<br />
E*<br />
A*<br />
E*<br />
F<br />
G<br />
H<br />
A*<br />
A*<br />
B*<br />
X<br />
Y<br />
Z<br />
于 2012-05-02T13:12:13.393 回答