テキストファイルを受け取り、すべての文字を小文字に設定し、すべての句読点を削除する簡単なプログラムを作成しようとしています。私の問題は、キャリッジリターン(いわゆる)と改行があると、スペースが削除されることです。
すなわち
これは
テスト文です
になる
これは証明です
最初の行の最後の単語と次の行の最初の単語が結合されます。
これは私のコードです:
public static void ParseDocument(String FilePath, String title)
{
StreamReader reader = new StreamReader(FilePath);
StreamWriter writer = new StreamWriter("C:/Users/Matt/Documents/"+title+".txt");
int i;
char previous=' ';
while ((i = reader.Read())>-1)
{
char c = Convert.ToChar(i);
if (Char.IsLetter(c) | ((c==' ') & reader.Peek()!=' ') | ((c==' ') & (previous!=' ')))
{
c = Char.ToLower(c);
writer.Write(c);
}
previous = c;
}
reader.Close();
writer.Close();
}
単純な問題ですが、スペースを挿入するために新しい行をチェックする方法を考えることはできません。どんな助けでも大歓迎です。