0

データをログファイルに継続的に保存できるソフトウェアツールを開発しようとしています。データが繰り返されているため、重複する行をすべて削除してログ ファイルに保存したいと考えていました。いくつかのフォーラムを調べて解決策を見つけましたが、それは私が探しているものではありません。これが私の状況です:

FM ラジオ局は、コマーシャルの休憩中に標準メッセージを放送します。たとえば、「Soft Rock KWAV 96.9FM」としましょう。数分後に、タイトルやアーティスト名などを含む曲を放送します。すべての情報をログに保存できます。重複行のないファイル。私の問題は、曲が終了すると再び 10 分間のコマーシャル ブレークがあることです。この時点で、現在のログ ファイルには既にメッセージ (「Soft Rock KWAV 96.9 FM」) が含まれているため、2 回目の繰り返しメッセージをテキストに挿入できません。ファイル。1 日の終わりにソフトウェアを実行してログ ファイルを確認すると、コマーシャル ブレークが 1 回だけ表示されますが、これは正しくありません。

任意の提案/アイデアをいただければ幸いです。

入力データ:

2013/02/15, 09:12, ソフト

2013/02/15, 09:12, ソフト

2013/02/15, 09:12, ソフト

2013/02/15, 09:12, ソフト

2013/02/15, 09:12, ソフト

2013/02/15, 09:12, ソフト

2013 年 2 月 15 日、09:12、ロック

2013 年 2 月 15 日、09:12、ロック

2013 年 2 月 15 日、09:12、ロック

2013 年 2 月 15 日、09:12、ロック

2013 年 2 月 15 日、09:12、ロック

2013 年 2 月 15 日、09:12、ロック

2013 年 2 月 15 日、09:12、KWAV

2013 年 2 月 15 日、09:12、KWAV

2013 年 2 月 15 日、09:12、KWAV

2013 年 2 月 15 日、09:12、KWAV

2013 年 2 月 15 日、09:12、KWAV

2013 年 2 月 15 日、09:12、KWAV

2013 年 2 月 15 日、09:12、96.9 FM

2013 年 2 月 15 日、09:12、96.9 FM

2013 年 2 月 15 日、09:12、96.9 FM

2013 年 2 月 15 日、09:12、96.9 FM

2013 年 2 月 15 日、09:12、96.9 FM

2013 年 2 月 15 日、09:12、96.9 FM

2013 年 2 月 15 日、09:13、ソフト

2013 年 2 月 15 日、09:13、ソフト

2013 年 2 月 15 日、09:13、ソフト

2013 年 2 月 15 日、09:13、ソフト

そして、次の曲/タイトル/アーティスト名など...

4

1 に答える 1

0

http://msdn.microsoft.com/en-us/library/vstudio/ezwyzy7b.aspx

http://msdn.microsoft.com/en-us/library/vstudio/8bh11f1k.aspx

この 2 つの投稿を組み合わせて使用​​します。

// load a StreamReader to the old path
using (StreamReader sr = new StreamReader(oldPath)) 
{
    // load a StreamWriter to the new path
    using (StreamWriter sw = new StreamWriter(newPath)) 
    {
        string lastLine = string.empty();
        while (sr.Peek() >= 0) 
        {
            var line = sr.ReadLine();

            // if the line's text is different from the previous, write it
            if (line != lastLine)
            {            
                sw.WriteLine(line);
                lastLine = line
            }
        }
    }
}

これは、連続する行のみを除外する必要があり、これを定期的に実行することを前提としています。免責事項: 私は実際にこのコードを実行していません。

于 2013-02-15T21:31:56.210 に答える