0

C# コードを少し落とした Powershell スクリプトがあります。このコードはファイルの正規表現検索を行い、一致が見つかった場合はそれをデータテーブルに書き込み、Powershell に返してさらに処理します。StreamWriter 書き込み行を追加するまで、すべてが正常に機能していました。私がそれをするとすぐに、スクリプトは完全に爆撃します。コードのスニペットを次に示します。スクリプトを爆破する行をマークしました。なぜこれがここで起こっているのでしょうか?その行をコメントアウトすると、スクリプトは正常に機能します。

Regex reg = new Regex(regex);
using (StreamReader r = new StreamReader(SFile))
{
    string revisedfile = FileName.txt
    string line;                
    while ((line = r.ReadLine()) != null)
    {
        using (StreamWriter writer = new StreamWriter(revisedfile, true))
        {                        
            // Try to match each line against the Regex.
            Match m = reg.Match(line);
            if (m.Success) 
            {   
                DateTime result;
                if (!(DateTime.TryParse(m.Groups[0].Value, out result)))
                {
                    // add it to the DT                            
                    MatchTable.Rows.Add(x, m.Groups[0].Value, line);

                    // write it to the "revised" file
                    writer.WriteLine(reg.Replace(line, match => DateTime.Now.ToString("MM-dd-yyyy"))); // this is the line that blows it up
                }
4

1 に答える 1