如何获取文本文件中的最后一个输入ID?

时间:2013-08-13 10:00:33

标签: vb.net notepad

有人可以帮我解决问题吗? 因为我在如何获取文本文件中的最后一个输入ID方面遇到了困难。我的后端是一个文本文件。 感谢。

这是我程序的文本文件的示例内容。

ID | CODE1 | CODE2 | EXPLAIN | CODE3 |日期|价格1 | PRICE2 | PRICE3 | 02 | JKDHG | hkjd | Hfdkhgfdkjgh | 264 | 56.46.54 | 654 654.87 | 878 643.51 | 567 468.46 | 03 | DEJSL | hdsk | Djfglkdfjhdlf | 616 | 46.54.56 | 654 654.65 | 465 465.46 | 546 546.54 | 01 | JANE | jane | Jane | 251 | 56.46.54 | 534 654.65 | 654 642.54 | 543 468.74 |

我如何得到最后一个输入id,以便输入行的id不会回到数字1?

2 个答案:

答案 0 :(得分:0)

创建一个读取文件的函数并返回行列表(字符串),如下所示:

 public static List<string> ReadTextFileReturnListOfLines(string strPath)
{
    List<string> MyLineList = new List<string>();
    try
    {
        // Create an instance of StreamReader to read from a file.
        StreamReader sr = new StreamReader(strPath);
        string line = null;
        // Read and display the lines from the file until the end 
        // of the file is reached.
        do
        {
            line = sr.ReadLine();
            if (line != null)
            {
                MyLineList.Add(line);
            }
        } while (!(line == null));
        sr.Close();
        return MyLineList;
    }
    catch (Exception E)
    {
        throw E;
    }
}

我不确定是否 ID | CODE1 | CODE2 | EXPLAIN | CODE3 |日期|价格1 | PRICE2 | PRICE3 | 是文件的一部分,但您必须调整要获取的元素的索引 ,然后获取列表中的元素。

MyStringList(1).split("|")(0);

答案 1 :(得分:0)

如果您正在寻找ID字段中的最后一个(最高)号码,您可以在LINQ中使用一行:

Dim MaxID = (From line in File.ReadAllLines("file.txt")
             Skip 1
             Select line.Split("|")(0)).Max()

这段代码的作用是通过File.ReadAllLines获取一个数组,跳过第一行(看起来是一个标题),拆分分隔符(|)上的每一行,从该分割中获取第一个元素(是ID)并选择最大值。

如果您输入样本,结果为&#34; 03&#34;。