CodePage

CodePage 속성은 문자열이 내부 개체에서 인코딩되는 방법을 지정합니다. 코드 페이지는 숫자, 구두점, 기타 그림 문자 등을 포함하는 문자 집합입니다. 코드 페이지는 각 언어마다 다릅니다. 한국어나 일본어 같은 일부 언어는 2바이트 문자를 가지는 반면에 영어나 독일어 같은 언어는 각 문자를 나타내는 데 1바이트만 필요합니다. CodePage 속성은 읽기/쓰기가 가능합니다.

구문

Session.CodePage(=CodepageID)

매개 변수

CodepageID
코드 페이지 서식을 지정하는 문자를 나타내는 정수입니다. 코드 페이지 정수에 대한 내용은 FamilyCodePage 열 아래에 있는 MSDN Web Workshop을 참조하십시오.

주의

Session.CodePage를 설정하면 세션의 모든 응답에 명시적으로 반영됩니다. Session.CodePage는 각 페이지에 Response.CodePage를 암시적으로 설정합니다. 세션은 Session.CodePage를 사용할 수 있도록 설정되어야 합니다.

Session.CodePage가 페이지에 명시적으로 설정되어 있지 않으면 Session.CodePage는 AspCodePage 메타베이스 속성에 의해 암시적으로 설정됩니다. AspCodePage 속성이 설정되어 있지 않거나 0으로 설정되어 있으면, Session.CodePage는 시스템 ANSI 코드 페이지에 의해 설정됩니다. IIS 5.0이나 그 이전 버전에서처럼 Session.CodePage는 @CodePage에 의해 더 이상 암시적으로 설정되지 않습니다. @CodePage가 전체 세션의 코드 페이지를 변경했기 때문에 이렇게 변경되었습니다. 이제 @CodePage 및 Response.CodePage는 단일 응답에만 영향을 주며 Session.CodePage는 세션의 모든 응답에 반영됩니다.

응답 본문마다 하나의 코드 페이지만 사용해야 합니다. 그렇지 않으면 잘못된 문자가 표시됩니다. 한 페이지가 #include, Server.Execute 또는 Server.Transfer 등이 있는 다른 페이지에 의해 호출되는 두 페이지에 코드 페이지를 명시적으로 설정한 경우, 대개 상위 페이지에 의해 코드 페이지가 결정됩니다. 유일한 예외 사항은 Server.Execute 호출의 상위 페이지에 Response.CodePage가 명백히 설정되었는지의 여부에 따라 발생합니다. 이런 경우 하위 페이지의 @CodePage 명령은 상위 코드 페이지를 무시합니다.

스크립트의 리터럴 문자열은 @CodePage(있는 경우) 또는 AspCodePage 메타베이스 값(설정된 경우), 시스템 ANSI 코드 페이지를 사용하여 인코딩됩니다. 클라이언트에 리터럴이 아닌 문자열을 보내기 전에 Response.CodePage나 Session.CodePage를 명시적으로 설정해야 합니다. 같은 페이지에서 리터럴 문자열과 리터럴이 아닌 문자열을 사용하는 경우, @CodePage의 코드 페이지가 Session.CodePage의 코드 페이지와 일치하는지 확인하고 리터럴 문자열이 리터럴이 아닌 문자열과 다르게 인코딩되거나 제대로 표시되는지 확인합니다.

웹 페이지의 코드 페이지가 웹 클라이언트의 시스템 기본 페이지와 일치하면 웹 페이지에서 코드 페이지를 설정할 필요가 없습니다. 그러나, 값 설정을 권장합니다.

코드 페이지를 페이지에 설정하면 Response.Charset도 설정해야 합니다. IIS는 응답 메시지를 작성할 때 코드 페이지 값으로 인코딩하는 방법을 결정하며, 브라우저는 응답 메시지를 표시할 때 문자 집합 값으로 디코딩하는 방법을 결정합니다. Response.Charset의 CharsetName은 반드시 코드 페이지 값과 일치해야 합니다. 그렇지 않으면 혼합된 문자가 브라우저에 표시됩니다. CharsetNames 목록과 일치하는 코드 페이지 값에 대한 내용은 Preferred Charset Label 및 FamilyCodePage 열 아래 있는 MSDN Web Workshop을 참조하십시오.

웹 페이지의 파일 형식은 해당 페이지에 사용된 @CodePage와 같아야 합니다. Notepad.exe를 사용하여 파일을 UTF-8 형식 또는 시스템 ANSI 형식으로 저장할 수 있습니다. 예를 들어, @CodePage가 UTF-8에 대해 65001으로 설정된 경우 웹 파일은 UTF-8 형식으로 저장됩니다. @CodePage가 1252로 설정된 경우 웹 파일은 영어나 독일어 시스템의 ANSI 형식으로 저장됩니다. 시스템 언어와 다른 언어에 대해 ANSI 형식으로 페이지를 저장하려면 제어판의 국가별 옵션에서 기본 시스템 로케일을 변경할 수 있습니다. 예를 들어, 사용자의 시스템 로케일을 일본어로 변경하면 ANSI 형식으로 저장한 모든 파일은 일본어 코드 페이지를 사용하여 저장됩니다. 이렇게 저장된 파일은 일본어 시스템 로케일에서만 읽을 수 있습니다.

예를 들어, 다중 언어 웹 사이트를 만들기 위해 다른 로케일, 코드 페이지, 문자 집합을 사용하여 웹 페이지를 만들어 테스트하려면 반드시 표시하려는 각 언어에 대한 언어 팩을 테스트 클라이언트에 설치해야 합니다. 제어판의 국가별 옵션에서 언어 팩을 설치할 수 있습니다.

적용

Session 개체


© 1997-2001 Microsoft Corporation. All rights reserved.