ASP+FSO 에서 생 성 된 웹 파일 의 기본 인 코딩 형식 및 UTF-8 인 코딩 으로 변환 하 는 방법

3840 단어 ASPFSOUTF-8
구체 적 인 특징 은 다음 과 같다.1.템 플 릿 을 통 해 러시아어 의 정상 을 실현 한다.2.백 스테이지 데이터 베 이 스 를 통 해 생 성 된 정적 러시아어 정 보 는 백 스테이지 가 정상 적 이 고 프론트 데스크 톱 이 어 지 럽 습 니 다.3.영 어 는 정상 입 니 다.이 테마 와 유사 하거나 다른 표현 FSO 가 UTF-8 인 코딩 파일 FSO 를 어떻게 사용 해 야 utf-8 인 코딩 파일 FSO 를 생 성 할 수 있 는 지 기본 인 코딩 형식 이 무엇 인지 UTF-8 인 코딩 FSO 로 정적 웹 페이지 를 생 성 하 는 지 에 대한 질문 ASP 에 서 는 FSO 로 파일 코드 를 다음 과 같이 생 성 합 니 다
 
function createfile(sfilename,scontent)
set fso=server.CreateObject("scripting.filesystemobject")
set f1=fso.opentextfile(sfilename,2,true,-1)
f1.write(scontent)
f1.close
set fso=nothing
end function
fso.opentextfile(sfilename,2,true,-1)마지막 인자-1 은 유 니 코드 로 지 정 된 인 코딩 형식 이 며,인 코딩 형식 은 유 니 코드 로 웹 페이지 에 UTF-16 little-endian 을 표시 합 니 다.OpenTextFile 방법 으로 지정 한 파일 을 만 들 고 TextStream 대상 을 되 돌려 줍 니 다.이 대상 은 만 든 파일 을 읽 거나 쓸 수 있 습 니 다.object.OpenTextFile(filename[,iomode[,create[,format]]])인자 object,필수 옵션.FileSystem Objec 또는 Folder 대상 의 이름 이 어야 합 니 다.여 기 는 fso 입 니 다.filename,필수 옵션.만 들 파일 을 가리 키 는 문자열 표현 식 입 니 다.여 기 는 sfilename 입 니 다.iomode,이 파일 이 읽 기,쓰기,추가 로 사용 되 는 지 선택 할 수 있 습 니 다.기본 값 은 1 은 읽 기,2 는 쓰기 동작,8 은 추가 동작 을 표시 합 니 다.create,선택 가능 한 인자 입 니 다.파일 을 만 들 지 않 으 면 기본 값 은 false 이 고 만 들 려 면 true 로 설정 합 니 다.format,매개 변 수 는 다음 설정 중 하나 입 니 다.기본 값 은 ASCII 형식 입 니 다.우리 가 원 하 는 utf-8:Tristate UseDefault-2 는 시스템 기본 형식 으로 파일 을 열지 않 습 니 다.TristateTrue-1 은 유 니 코드 형식 으로 파일 을 엽 니 다.TristateFalse 0 은 ASCII 형식 으로 파일 을 엽 니 다.FSO 의 인 코딩 속성 은 세 가지 에 불과 합 니 다.시스템 기본,유 니 코드,ASCII 는 우리 가 원 하 는 utf-8 이 없 기 때문에 일반 중국어 시스템 에서 FSO 구성 요 소 를 사용 하여 생 성 된 파일 은 gb 2312 인 코딩 형식 입 니 다.해결 방법 은 GB 2312 인 코딩 에 러시아어 자모 가 포함 되 어 있 으 며 페이지 가 간 체 중국어 GB 2312 로 설정 되면 러시아 어 는 정상적으로 표 시 될 수 있 으 나 중국어 의 기본'송 체'표시 로 인해'송 체'에서 러시아 어 는 전각 문자 로 표시 되 어 보기 싫 으 므 로'신 로마'나'아 리 알'등 외국어 글꼴 을 사용 해 야 한다.중국 고객 에 게 는 심 부 름 을 할 수 있 지만 진정한 러시아 사람들 이 페이지 를 조회 할 때 중국 어 를 다운로드 하고 설치 해 야 하기 때문에 이상 적 이지 않 아 웹 페이지 를 조회 하 는 것 을 포기 할 수 있다.해결 방법 2 ASP 는 오래된 언어 이기 때문에 일부 기능 은 UTF-8 에 대한 지원 이 매우 떨어진다.FSO 는 UTF-8 형식의 파일 을 직접 만 드 는 것 을 지원 하지 않 습 니 다.필요 한 파일 형식 을 지정 할 수 없 기 때 문 입 니 다.예 를 들 어 UTF-8 형식의 파일 을 만 들 려 면 자주 사용 하 는 Scripting.FileSystemObject 대상 을 사용 하면 안 됩 니 다.아 이 디 어 를 바 꿔 야 합 니 다.Adodb.stream 을 사용 해 야 합 니 다.현재 일부 블 로그 프로그램 은 이렇게 이 루어 집 니 다.예 를 들 어 zblog.Scripting.FileSystemObject 대상 이 파일 을 만 드 는 함 수 는 다음 과 같 습 니 다.FileSystemObject.CreateTextFile(filename[,overwrite[,유 니 코드]])의 유 니 코드 속성 은 다음 과 같 습 니 다.옵션 이 있 습 니 다.Boolean 값 은 유 니 코드 나 ASCII 파일 형식 으로 파일 을 만 들 지 여부 입 니 다.유 니 코드 파일 형식 으로 파일 을 만 들 면 이 값 은 True 입 니 다.ASCII 파일 형식 으로 파일 을 만 들 면 이 값 은 False 입 니 다.이 부분 을 생략 하면 ASCII 파일 을 만 들 것 이 라 고 가정 합 니 다.이 함수 로 UTF-8 형식 파일 을 만 들 수 없습니다.ADODB.Stream 대상 을 사용 합 니 다.사용 방법 은 다음 과 같 습 니 다
 
Set objStream = Server.CreateObject("ADODB.Stream")
With objStream
.Open
.Charset = "utf-8"
.Position = objStream.Size
.WriteText=str
.SaveToFile server.mappath("/sitemap.xml"),2
.Close
End With
Set objStream = Nothing
부록:ASCII,Unicode,UTF-8 은 ASCII 가 대소 문자 의 영문 자모,숫자,제어 문자 등 을 포함 한 문자 집합 이 라 고 소개 합 니 다.범 위 는 0-127 입 니 다.ASCII 가 표시 하 는 문자 가 매우 유한 하기 때문에 각 국가 나 지역 은 이 를 바탕 으로 자신의 문자 집합 을 제시 했다.예 를 들 어 중국 에서 매우 광범 위 하 게 응용 되 는 GB 2312 는 한자 에 인 코딩 을 제공 하고 두 바이트 로 표시 했다.이 문자 집합 들 은 서로 호 환 되 지 않 고 같은 숫자 는 서로 다른 문 자 를 표시 하여 정보 교류 에 번 거 로 움 을 가 져 올 수 있다.유 니 코드 는 문자 집합 으로 세계 의 모든 문 자 를 유일한 숫자(code point)로 표시 합 니 다.예 를 들 어 알파벳 a 에 대응 하 는 숫자 0x 0041 입 니 다.현재 유 니 코드 는 발전 중 이 며 포용 하 는 문자 가 점점 많아 지고 있다.유 니 코드 가 표시 하 는 문 자 를 저장 할 때 UCS-2 와 같은 인 코딩 방식 이 필요 합 니 다.유 니 코드 인 코딩 문 자 를 두 바이트 로 표시 합 니 다.한편,UTF-8 은 유 니 코드 문자 집합 의 또 다른 인 코딩 방식 으로 길이 가 변 하고 최대 6 개의 바이트 이 며 127 보다 작은 문 자 는 하나의 바이트 로 ASCII 문자 집합 결과 와 같 기 때문에 매우 좋 은 호환성 을 가진다.ASCII 인 코딩 된 영어 텍스트 는 수정 하지 않 아 도 UTF-8 인 코딩 으로 처리 할 수 있어 매우 광범 위 하 게 응용 된다.

좋은 웹페이지 즐겨찾기