StreamReader로 파일을 읽고 StreamWriter로 다른 파일에 정확한 줄을 쓰고 있습니다. 그러나 문제는 결과 파일에서 '|'문자가 '?'로 변환된다는 것입니다.Streamreader로 입력하면 StreamWriter에서 동일한 출력이 제공되지 않습니다.
using (var readFile = new FileStream(path, FileMode.Open, FileAccess.Read))
{
using (var writeFile = new FileStream(@"Modified\" + Path.GetFileName(path), FileMode.Create, FileAccess.Write))
{
using (var sr = new StreamReader(readFile, new ASCIIEncoding()))
{
using (var sw = new StreamWriter(writeFile, new ASCIIEncoding()))
{
//Read line and write it to the writer
}
}
}
}
이이 흐름에 문제가 될 수 있거나 가능성이 원본 파일에 문제가 :
이 내 스트림을 초기화하는 코드입니다? 원본 파일 자체는 여러 텍스트 편집기에서 제대로 표시되므로 올바른 것으로 보입니다.
중단 점을 설정할 때 디버거에서 어떻게 보이나요? – user1666620
인코딩을 UTF8로 변경해 보셨습니까? –
분명히 ASCIIEncoding을 사용하고 싶지는 않습니다. 텍스트 인코딩이 어떤 것인지 단서가 없다면 Encoding.Default를 사용하십시오. 그러나 단서가 있어야합니다. –