我将以流的方式读取文件:
编辑:目标是删除单个回车符
示例文件:
Stream fin = File.OpenRead(FilePath);
您有没有办法找到并从该文件流中删除所有回车符?编辑:目标是删除单个回车符
\ r
,并保留与换行符"\r\n"
一起的回车符。示例文件:
The key backed up in this file is:\r
\r\n
pub 2048R/65079BB4 2011-08-01\r
\r\n
Key fingerprint = 2342334234\r
\r\n
uid test\r
\r\n
sub 2048R/0B917D1C 2011-08-01\r
最终结果应该如下所示:
The key backed up in this file is:
\r\n
pub 2048R/65079BB4 2011-08-01
\r\n
Key fingerprint = 2342334234
\r\n
uid test
\r\n
sub 2048R/0B917D1C 2011-08-01
编辑2:最终解决方案如下:
static private Stream RemoveExtraCarriageReturns(Stream streamIn)
{
StreamReader reader = new StreamReader(streamIn);
string key = reader.ReadToEnd();
string final = key.Replace("\r\r", "\r");
byte[] array = Encoding.ASCII.GetBytes(final);
MemoryStream stream = new MemoryStream(array);
return stream;
}
我使用StreamReader
将Stream
读入字符串中,然后去除多余的回车符并将其重新写入Stream
。您认为我的代码是否正确?或者我需要做一些不同的事情吗?