0

文字列内の C# 置換テキストを使用していますが、テキストが行末にあると失敗します。

string filepent = filehex.Replace(",,,,,\r\n", ",EMPTY,EMPTY,EMPTY,EMPTY,EMPTY"); 

txt ファイルをファイルストリームにロードしてから、文字列に変換しています。行末に「、、、、、」と書かれているところをどこでも置き換えたいです。現在、上記のコードはファイルの末尾のみを変更しています。変更する必要がある行の最後に、私の16進エディタは..または0D 0Aがあると言います

ありがとう

4

1 に答える 1

0

代わりに、 File.ReadAllLinesを使用してファイルを分割し、置換を行ってから、それらを結合し直したいと思います。おそらく最もパフォーマンスが高いわけではありませんが、あなたの目標を明確に表現しています。何かのようなもの:

string matchPattern = ",,,,,$"; // $ to match the end of the line.
string replacement = ",EMPTY,EMPTY,EMPTY,EMPTY,EMPTY";
string filepent = String.Join(
    Environment.NewLine, // or maybe just "\r\n"
    File.ReadAllLines(yourFilePath)
        .Select(line => Regex.Replace(line, matchPattern, replacement))); 
于 2012-07-22T13:51:37.963 に答える