fso.OpenTextFil을 사용하여 UTF-8 파일을 읽거나 FSO.save를 사용하여 UTF-8 파일을 생성할 때 왜곡된 문자에 대한 해결 방법은 ASP 페이지의 HTML 코드를 읽고 이를 다음과 같은 형식으로 저장하는 것입니다. html 파일입니다.
동적 페이지는 utf8 형식으로 인코딩되어 있으므로 html 코드를 얻은 후 fso를 사용하여 저장했습니다. 생성된 html은 성공했지만 gb2312를 선택하면 액세스할 수 없습니다. 정상적으로 접속하세요. 전체 사이트가 utf8 형식으로 인코딩되어 있으므로 액세스하기 전에 인코딩을 선택해야 합니다. 이는 너무 번거롭고 아무도 액세스하려고 하지 않으므로 utf8 형식 인코딩을 사용합니다. 문제는 해결되어야 합니다.
검색을 좀 해보니 fso가 utf8 형식의 파일을 생성할 수 없다는 사실을 발견했습니다. 그러니 다른 접근 방식을 시도해 보세요.
한참을 검색한 결과 fso 대신 파일을 생성할 수 있는 함수를 찾았습니다. adodb.stream 개체를 사용하여 utf8 파일을 생성하는 기능은 다음과 같습니다.
다음과 같이 코드 코드를 복사합니다.
'------------------------------------------------
'함수 이름: ReadTextFile
'기능: AdoDb.Stream 개체를 사용하여 UTF-8 형식의 텍스트 파일을 읽습니다.
'------------------------------------------------ - --
함수 ReadFromTextFile(FileUrl,CharSet)
희미한 str
stm=server.CreateObject("adodb.stream") 설정
stm.Type=2 '이 모드에서 읽기
stm.mode=3
stm.charset=CharSet
stm.open
stm.loadfromfile 서버.MapPath(FileUrl)
str=stm.readtext
stm.닫기
set stm=nothing 이 기사의 출처는 다음과 같습니다.
ReadFromTextFile=str
기능 종료
'------------------------------------------------
'함수 이름:WriteToTextFile
'기능: AdoDb.Stream 개체를 사용하여 UTF-8 형식으로 텍스트 파일을 작성합니다.
'------------------------------------------------ - --
하위 WriteToTextFile(FileUrl, byval Str, CharSet)
stm=server.CreateObject("adodb.stream") 설정
stm.Type=2 '이 모드에서 읽기
stm.mode=3
stm.charset=CharSet
stm.open
stm.WriteText 문자열
stm.SaveToFile 서버.MapPath(FileUrl),2
stm.플러시
stm.닫기
stm=아무것도 설정하지 않음
End Sub IISBOY.COM,IISBOY.COM
사용 방법:
다음과 같이 코드 코드를 복사합니다.
WriteToTextFile("../index.html","aaa","utf-8")을 호출합니다.
완료.