문제

UTF-8에 인코딩 된 XSD 파일이 있으며, 실행하는 텍스트 편집기는 파일의 시작 부분에 어떤 문자도 표시되지 않지만 Visual Studio의 디버거에서 가져 오면 비어있는 것을 분명히 볼 수 있습니다. 파일 앞의 상자.

Box in file

나는 또한 오류가 발생합니다.

루트 레벨의 데이터가 유효하지 않습니다. 1 행, 위치 1.

alt text

누구든지 이것이 무엇인지 아십니까?

업데이트 : 자격을 갖춘 파일 유형으로 편집 된 게시물. Microsoft의 XSD 제작자가 만든 XSD 파일입니다.

도움이 되었습니까?

해결책

그 대답은 내가보고있는 것이 바이트 주문 마크, 문서를로드하는 모든 것을 알려주는 캐릭터입니다. 제 경우에는 UTF-8로 인코딩되어 해당 BOM이있었습니다. EF BB BF, 아래 그림과 같이. 그것을 제거하기 위해, 나는 그것을 열었다 메모장 ++ 아래와 같이 "BOM없이 UTF-8의 Encode"를 클릭했습니다.

Saving in NotePad++.

실제로 BOM을보기 위해서는 그것을 열어야했습니다. 텍스트 패드 이진 모드 : 및 수행 a Google 검색 "EF BB BF".

binary mode

이것이 원인이라는 것을 알기 위해 약 8 시간이 걸렸으므로 모든 사람들과 이것을 공유 할 것이라고 생각했습니다.

업데이트: Joel Spolsky의 블로그 게시물을 읽었다면 : 모든 소프트웨어 개발자가 절대적으로 절대적으로 최소한, 유니 코드 및 문자 세트에 대해 긍정적으로 알아야합니다 (변명 없음!), 그러면이 문제가 없었을 수도 있습니다.

다른 팁

VIM과 함께하는 방법은 다음과 같습니다.

# vim file.xml
:set nobomb
:wq
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top