Im 스트림으로 파일을 읽는 중 : Stream fin = File.OpenRead(FilePath);
파일 스트림에서 캐리지 리턴을 찾아서 제거하는 방법이 있습니까?스트림에서 여분의 캐리지 리턴을 제거하십시오.
편집 : 목표는 단일 캐리지 리턴을 제거하고 \r
을 반환하고 캐리지 리턴을 그대로 두어 새 줄 "\r\n"
을 그대로 유지합니다.
예제 파일 :
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
EDIT2 :
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
그리고 그 결과는 같아야 같은 모습을하고있다 어떤 최종 해결책 :
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;
}
내가 취할를 Stream
StreamReader
을 사용하여 문자열로 읽은 다음 e를 제거하십시오. xtra carriage-return을 입력하고 Stream
에 다시 씁니다. 코드가 정상적으로 보이 나 다르게해야합니까?
잘 보인다. 작은 파일을위한 좋은 솔루션. –