2011-01-04 2 views
3

제목에 0x96 문자가있는 TFS 프로젝트가 있습니다 (예 : "Project - X"를 배치 파일에서 참조해야합니다. 문제는이 특정 대시가 유니 코드 (ASCII의 û)에서 제어 문자 인 0x96 (0x20이 아님)로 표시되므로 다음 (ANSI로 인코딩 된 .cmd 파일에서)이 "Project û X"로 실패합니다.배치 파일에 0x96 문자를 에코하는 방법은 무엇입니까?

echo "Project – X" 

그러나 명령 행 (내 생각)이 사기꾼 (내 파일 이름이 일치하지 않는 좋은 없다)을가 0x20에 0x96을 변환에 바로 붙여 넣을 때. 나는 이것을 16 진수 편집기로 시도해 보았고 어떤 부정 행위가 계속되고있는 것처럼 보였다.

.cmd 파일은 ANSI 이외의 다른 것으로 인코딩 된 경우 작동하지 않습니다. 이 같은

답변

2

뭔가가 CHCP 850 다시 내 기본 코드 페이지로 전환 아니라, 중요한 것은이 CHCP 1252입니다

@echo off 
SETLOCAL EnableDelayedExpansion 
chcp 1252 
set "name=Projekt û X.txt" 
chcp 850 
type "!name!" 

작동하지만,이 켜지지 없습니다.

+0

코드 조각을 사용해 주셔서 감사합니다. :) – timB33

3

기본적으로 cmd.exe는 이전의 "OEM"코드 페이지를 사용하지만 유니 코드 이전 Windows 응용 프로그램은 "ANSI"코드 페이지 (Code Pages Supported by Windows)를 사용합니다.

(as jeb alludes)는 OEM 인코딩 (문자가 그 안에 있다고 가정) 또는 ANSI 인코딩의 switch your console으로 텍스트 파일을 저장해야합니다.

+0

코드 페이지 변경에 대한 정보를 보내 주셔서 감사합니다. – timB33