0

ファイルに次のテキストがあります

 Index: D:/QATV2Demo/Main.msbuild
===================================================================
--- D:/QATV2Demo/Main.msbuild   (revision 12414)
+++ D:/QATV2Demo/Main.msbuild   (revision 12416)
--- D:/QATV2Demo/Main.msbuild   (revision 12414)
+++ D:/QATV2Demo/Main.msbuild   (revision 12416)
@@ -39,7 +39,7 @@
  AssemblyFile="$(ToolsBinPath)\MSBuild.Community.Tasks.dll" />

-    <FxCop_CriticalErrors>10</FxCop_CriticalErrors>
 +    <FxCop_CriticalErrors>0</FxCop_CriticalErrors>


 <FxCop_Errors>0</FxCop_Errors>
 <FxCop_CriticalWarnings>0</FxCop_CriticalWarnings>
 <FxCop_Warnings>0</FxCop_Warnings>


  Index: D:/QATV2Demo/QATV2Demo/QATConstant.cs
===================================================================
--- D:/QATV2Demo/QATV2Demo/QATConstant.cs   (revision 12414)
+++ D:/QATV2Demo/QATV2Demo/QATConstant.cs   (revision 12416)
@@ -9,7 +9,7 @@
  {
     public static readonly string PAGE_DATA_DROP_DOWN_MODE = "D";
     public static readonly string PAGE_DATA_GRID_MODE = "G";
-        public static readonly string REPORT = "Report";
+        public static readonly string REPORT = "Report1";
    public static readonly string ITEM_COUNT = "ItemCount";
 }

}

これで、ファイルの内容の違いを示す-と+で始まる行である結果を与える独自のコードを作成しました。

これが私のコードです

 int counter = 0;
        string line;
        string filename = args[0].ToString();


        using (System.IO.StreamReader file = new StreamReader(filename))
        {
            while ((line = file.ReadLine()) != null)
            {
                if (line.StartsWith("- ")||line.StartsWith("+ "))
                {
                    Console.WriteLine(line.Trim('-',' ','+'));

                }
                counter++;
            }

            file.Close();
        }
        // Suspend the screen.
        Console.WriteLine(counter);

これは私が使用したラフコードです。

このシナリオで私に最適なドットネットクラスを教えてください

前もって感謝します。

4

1 に答える 1

1

コードが希望どおりに機能する場合は、解析を変更する必要はありません。File.ReadLines次のように、を使用してファイルの読み取りを簡略化できます。

foreach (var line in File.ReadLines(filename))
{
    if (line.StartsWith("- ") || line.StartsWith("+ "))
    {
        // do stuff here
    }
    ++counter;
}

それ以外は、追加された行と削除された行を見つけたら、それをどうするかは言いません。だから私はそこに推薦を与えることはできません。

于 2012-05-09T14:47:30.310 に答える