ASP : UTF-8 파일 읽고 쓰기

ASP에서 FileSystemObject를 이용해서 UTF-8 파일을 읽으면 글자가 깨진다. ASCII나 유니코드(UCS-2) 파일이 아닌 경우는 FileSystemObject로 파일을 읽을 수 없다.

ASP에서 UTF-8 파일을 읽거나 쓸 때 다음 함수를 이용하면 유용한다.

Function ReadUTF8File(sFileName)
    Dim Stream, TextBuffer

    Set Stream = Server.CreateObject("ADODB.Stream")
    With Stream
        .Charset = "utf-8"
        .Type = 2 'adTypeText
        .Open
        .LoadFromFile sFileName
        .Position = 0
        ReadUTF8File = .ReadText
        .Close
    End With

    Set Stream = Nothing
End Function  

Function WriteUTF8File(sFileName, sText)
    Dim Stream

    Set Stream = Server.CreateObject("ADODB.Stream")
    With Stream
        .Charset = "utf-8"
        .Type = 2 'adTypeText
        .Open
        .WriteText sText
        .SaveToFile sFileName, 2 'adSaveCreateOverWrite
        .Close
    End With

    Set Stream = Nothing
End Function

Related posts:

  1. ASP에서 CodePage 고찰 ASP에서 CodePage 설정에 따라 문자열이 어떻게 처리가 되는지를 살펴보자. <%@...
  2. ASP: MSXML2.ServerXMLHTTP 사용하여 원격 웹서버 내용 갖고 오기 HTTP를 구현해 놓은 여러 컴포넌트들이 있지만 윈도우2000부터 기본으로 설치되는 MSXML2.ServerXMLHTTP...
  3. [ASP] 원격 웹서버에 파일이 존재하는지 체크하는 함수 HttpFileExists 지정 URL에 해당하는 파일이 존재하는지 체크하는 HttpFileExists 함수를 만들어 봤다....
  4. ASP: WinHttp.WinHttpRequest.5.1을 이용해서 https 사이트 접속하기 ASP에서 Client Certificate을 요구하는 https 사이트를 접속하는 방법을 소개하고자 한다....
  5. ASP : MySQL UTF-8 로 접속하기 ASP가 UTF-8 환경이고 MySQL DB가 UTF-8 일 때 다음의 연결...