(小ネタ)改行文字を削除する
ささいな事ですが、うっかり引っかかったのでまとめておきます。
C#で文字列に含まれている改行文字を取り除く方法は、改行文字を含む位置によって違います。
- 末尾にある場合
TrimEndメソッドに改行文字を渡します。環境に依存しないようにCRとLFを両方とも渡します。
string m = "あいうえお\n"; m.TrimEnd('\r', '\n'));
- 先頭にある場合
TrimStartメソッドに改行文字を渡します。こちらを使うことはあまり無いと思います。
string m = "\nかきくけこ"; m.TrimStart('\r', '\n'));
先頭と末尾の両方を対象とするTrimメソッドというものもあります。
- 文中にある場合
文中に改行文字がある場合は、Trim***メソッドでは処理されません。ここに引っかかってしまいました。
この場合は、Replaceメソッドを使用します。注意点としては改行文字は、ダブルクォートで囲むことです。
string m = "さしすせそ\nたちつてと"; m.Replace("\r", "").Replace("\n", "");
上記の例では、文字列に含めた改行文字には \n を使用しましたが、\r でも \r\n でも、Environment.NewLineでも動作します。
参考サイト