[visual-studio-2010] BOM이없는 UTF-8

UTF-8 (BOM없이)로 저장 해야하는 자바 스크립트 파일이 있으며 메모장 ++ 에서 올바른 형식으로 변환 할 때마다 Visual Studio에서 파일을 열면 BOM을 사용하여 UTF-8로 되돌아갑니다. VS2010이 그렇게하지 못하게하려면 어떻게해야합니까?

또 다른 질문은 Visual Studio에서 서명이없는 UTF-8이 BOM이없는 UTF-8과 동일합니까?



답변

BOM 또는 바이트 주문 마크는 때때로 성가시다. Visual Studio는 파일을 저장하지 않으면 파일을 변경하지 않습니다 (Hans가 말한 것처럼).

다음은 문제에 대한 해결책
입니다. 다른 인코딩으로 파일을 저장하려면 다른 이름으로 저장을 선택하고 파일 대화 상자에서 저장 버튼을 확장하고 “인코딩으로 저장”을 선택하십시오. 또는이 설정을 영구적으로 제거하려면 파일 메뉴를 열고 “고급 저장 옵션”을 선택하면 “서명없는 UTF-8″(그리고 마지막 질문 :)도 선택해야합니다. 예 “서명없는 UTF-8″은 BOM없는 것과 동일합니다.


답변

이제 사진과 함께.

  1. File->로 이동하십시오 Save As.

    파일 / 다른 이름으로 저장

  2. 그런 다음 저장 버튼에서 삼각형을 클릭하고을 클릭하십시오 Save with Encoding....

    인코딩으로 저장

  3. 확인을 클릭하여 파일을 덮어 쓴 다음 인코딩 목록에서 찾기 UTF-8 Without signature->를 클릭하십시오 OK.

    서명없는 UTF-8

이것이 시간을 절약하기를 바랍니다.


답변

Visual Studio 2010+에서 BOM을 UTF-8 파일에 추가하지 못하게 하는 수정 파일 인코딩 확장을 만들었습니다 .


답변

불행히도 이것은 csproj 파일에서 작동하지 않습니다. “고급 저장 옵션”이 없으며 cs 파일에 대해 “서명없는 UTF-8″로 설정하더라도 csproj 파일은 여전히 ​​BOM과 함께 저장됩니다. VSS를 사용하는 경우 여전히 프로젝트 파일에 대해 불평합니다.


답변

UTF-8- “다른 이름으로 저장”(서명없이) 기본값-서명없이 UTF에 대한 기본값 포함 요청

VS 2017은 기본적으로 EditorConfig를 지원 하므로 권장되는 솔루션은 .editorconfig파일을 코드베이스 에 추가 하고 설정하는 것 charset => utf-8입니다. 그런 다음 파일을 저장하면 BOM없이 UTF-8로 저장됩니다.


답변

vs2010 c ++의 경우 소스 파일에 멀티 바이트 문자 (예 : 중국어)가 포함 된 경우 BOM이없는 UTF8에 문제가 있습니다.

이러한 문자는 BOM이 없으면 올바르게 인식되지 않으므로 작성에 실패합니다.


답변

최근에 임의의 UTF-8 인코딩 파일에서 BOM을 추가하거나 제거하는이 작은 명령 줄 도구를 찾았습니다. UTF BOM 유틸리티 ( github의 새 링크 )

약간의 단점은 일반 C ++ 소스 코드 만 다운로드 할 수 있다는 것입니다. makefile ( 예 : CMake 사용 )을 작성하고 직접 컴파일해야합니다.이 페이지에는 바이너리가 제공되지 않습니다. 그러나 소프트웨어 개발자에게는 문제가되지 않습니다.