随机读取行数

时间:2016-07-12 18:46:09

标签: c#

我需要你的帮助,我有一个txt文件,其中包含自动加载的以下信息:

<?php 
foreach ($post_titles as $i => $title) {
    echo $title . '<br>' . $posts[$i] . '<br>';
}
?> 

我需要在控制台中仅打印以D

开头的行

我尝试使用if statment或者但是我没有真正得到它

     U 00024791
     0212-204T2HT
     Caracas, 12 de Julio       de 2016
     SAVAKE CA
     Estimado SCARLET
     D        1089274             101548895              444.825,68 BS
     D        6555555             101548895              444.825,68 BS
     D        9563221             101548895              444.825,68 BS
 FIN SCARLET SANCHEZ

注意:以D开头的行并不总是三行,它会有所不同,这意味着它可能超过以D开头的10行,在这种情况下,我必须在控制台上打印所有这些行。

2 个答案:

答案 0 :(得分:1)

试试这个:

string[] readText = File.ReadAllLines(@"p:\CARTAP1.txt");
foreach (string s in readText)
{
    if (s.Trim().StartsWith("D"))
    {
        Console.WriteLine(s);
    }
}

和Linq一起:

string[] readText = File.ReadAllLines(@"p:\CARTAP1.txt");
foreach (string s in readText.Select(s => s.Trim()).Where(s => s.StartsWith("D")))
{
    Console.WriteLine(s);
}

答案 1 :(得分:0)

这个怎么样:

File.ReadAllLines(@"p:\CARTAP1.txt").Where(w => Regex.IsMatch(w, @"^\s*D"));

You can play with the Regex here