나는 다음과 같은 오류가 계속되면 추가 처리를위한하여 XDocument에 특수 문자가 포함 된 XML 파일의 문자열 내용을 구문 분석하는 것을 시도하고있다 :오류 구문 분석 XML
Name cannot begin with the '.' character, hexadecimal value 0x00. Line 1, position 8.
을 나는 통제권이 없습니다 이 파일. 내가 읽을 수있는 네트워크 공유에서 파싱 만하면된다.
<?xml version="1.0" encoding="utf-16"?>
<ns0:SAEErr xmlns:ns0="http://xyz">
<ErrorInformation>olsfdhfaskldhfksajdfkajsf</ErrorInformation>
<OriginalMessage>慐浹湥䥴Ɽ慐浹湥却慴畴䍳摯ⱥ慐</OriginalMessage>
</ns0:SAEErr>
코드는 위의 파일을 구문 분석은 다음과 같다 :까지 다음과 같이 파일 내용이
StringBuilder sb = new StringBuilder();
sb.Append("<root>");
sb.Append(FileUtil.ReadFileContent(fileName));
sb.Append("</root>");
return XDocument.Parse(sb.ToString());
내가 무슨 말이냐?
미리 감사드립니다.
UPDATE : 다음 코드 업데이트는 않았다 :
XElement body = XElement.Load(fileName);
return new XDocument(new XDeclaration("1.0", "utf-16", "no"), body);
감사 헹크를!
을 사용하면 XML 문서를로드하는 데 사용하는 코드를 표시합니다. –
또한 실제로 UTF-16인지 확인한 방법을 알려주십시오. –
예, XML 파일의 16 진수 덤프를 보여주십시오. –