2012-08-13 3 views
0

일부 XML 파일을 읽고 싶습니다.XML 파일에서 보이지 않는 정크 문자를 제거하는 방법

나는 이러한 파일을 열하고 때 메모장/워드 패드/MS Word 또는 내가 MS DOS, ∩╗┐ "와 같은 눈에 보이지 않는 chacter 그것을 실행하려고 할 때, 그것은 원래 form.But에 개방하는 모든 브라우저 " 보인다. 나는 "콘텐츠 프롤로그에서 허용되지 않습니다." '∩╗┐이'오류를 발견하고 error.i을 만들 생각

내가 C# 코드를 사용하여 XML 파일에서이 보이지 않는 정크 문자를 제거 할 수있는 방법을 가르쳐주세요 .

미리 감사드립니다.

+0

인가? – CodeCaster

+0

XML을 실행 하시겠습니까? MS-DOS에서? 콘솔 창에서 인쇄한다는 의미입니까? –

+0

무엇인지 모르십니까? 모든 브라우저와 거의 모든 편집기에서 보이지 않지만 MS Dos 창에서 볼 수 있습니다. C :> type test.xml –

답변

0

아마도 UTF-8 byte-order mark 일 수 있습니다. 많은 텍스트 편집기 (예 : Notepad ++ 및 jEdit)를 사용하면 BOM을 UTF-8 용으로 작성해야하는지 여부를 지정할 수 있습니다. Windows 메모장에서 유일한 옵션은 파일을 ANSI로 저장하는 것입니다.

+0

고맙습니다. 문제를 해결하는 데 도움이됩니다. –

1

확실히 바이트 순서 표시처럼 들립니다. 귀하의 질문은 불분명하지만, 실제로는 바이트 순서 표시하지 않고 C#을에서 이러한 파일을 작성해야하는 경우, 당신은 UTF8Encoding 생성자에 false를 전달하여이를 지정할 수 있습니다 : 그것은 바이트 순서 표시

XmlDocument xmlDoc = your_xml_document; 
using (TextWriter writer = new StreamWriter(output_filename, new UTF8Encoding(false)) 
{ 
    xmlDoc.Save(writer); 
} 
관련 문제