ACII로 인코딩 된 XML 파일이 있습니다.XmlReader의 기본 인코딩이 XmlTextReader의 기본 인코딩과 다르게 작동하는 이유는 무엇입니까?
나는 두 개의 서로 다른 마이크로 소프트 XmlReader를 구현 사용하여 읽기 시도 :
-
을
XmlReader.Create(new StreamReader(fileImport.FileContent, true));
new XmlTextReader(fileImport.FileContent)
의 인코딩에서는 StreamReader를 사용하여 첫 번째, XmlReader.Create, 좋은 작품 .
두번째 새로운하여 XmlTextReader는 메세지를 발생 XmlException '지정된 인코딩 잘못된 문자.'
당신은 그들이 모두 바이트 순서 마크에서 인코딩을 감지하는데 이들 모두에 대한 MSDN 설명서를 읽고 있다면 그 UTF-8로 후퇴 실패하는 경우. 에서는 StreamReader는하지 않지만
XmlTextReader
[msdn]
StreamReader
[msdn]
그럼, 왜 잘못된 인코딩 실패하여 XmlTextReader 않는 문서는 모두 구현은 기본적으로 동일하게 인코딩 처리 말할 때 ?
응답 주셔서 감사합니다. 선언 된 인코딩에 대한 좋은 생각. 월요일에 사무실로 돌아올 때 다시 확인해 보겠습니다. –
Hmmm ... 루트 노드에 정의 된 인코딩 특성이 없습니다. XmlTextReader가 인코딩을 결정하기 위해 무엇을하는지 잘 모르겠지만 StreamReader 구현으로 실행하려고합니다. 다시 깨지면 문제가 무엇인지 분명히 알 수 있습니다. 감사. –