-3

我希望有人可以在这里给我一点帮助。我有一个文本文件,它有两列,每列用空格(“”)分隔,第一列是字符串,第二列是数字字段。

我正在尝试读取 textbox1 中的数字字段并将其与 column2 中的每个数字字段匹配,如果 textbox1 中的数字不大于该字段,则将该行(列 1 和列 2)复制到另一个文本文件中。

到目前为止,我有以下编码。

Dim l1Infos = Textbox1.text
        Select New With {.Line = l1, .Tokens = l1.Split(" "c)}
        Dim result = From l1 In l1Infos
                     Join l2 In IO.File.ReadAllLines("C:\Test2",)
                     On l1.Tokens(0) Equals l2
                     Select l1.Line
        IO.File.WriteAllLines("C:\Test2", result)
4

1 回答 1

2

虽然将尽可能多的逻辑塞进一个语句中可能会令人印象深刻,并且可能会为您赢得代码混淆奖,但有时更简单的解决方案更容易阅读、调试和维护:

    Dim maxValue As Integer = Integer.Parse(TextBox1.Text)
    For Each line As String In File.ReadAllLines("C:\Test1")
        If Integer.Parse(line.Split(" "c)(1)) < maxValue Then
            File.AppendAllText("C:\Test2", line)
        End If
    Next

我想如果这对您不起作用,那么弄清楚为什么不这样做会容易得多。启动的代码甚至更少!

于 2012-05-25T13:24:07.200 回答