charset
utf-8에서 파일 쓰기
utf-8 에서 파일을 만들면 기본적으로 unicode 가 생성되는데 이경우 unicode는 엄밀히 말해 utf-16이라서 asp에서 처리가 되지 않는다. 이경우 파일작성 요령입니다.
Sub makeFile_adminInfo(strText, FILEPATH)
if utf-8 이면 then
Call util.WriteToFile(strText , FILEPATH)
else ascii이면
Dim FSO, ForWriting, FILE
SET FILE = FSO.createTextFile(FILEPATH, ForWriting)
SET FSO = Server.CreateObject("Scripting.FileSystemObject")
IF FSO.fileExists(FILEPATH) THEN FSO.DeleteFile(FILEPATH)
FILE.WriteText strText
FILE.CLOSE
Set FSO = Nothing : Set FILE = Nothing
''On Error Resume Next
end if
End Sub
Sub WriteToFile (strText, strFile)''utf-8에서 사용시
Dim Stream
Set Stream = CreateObject ("ADODB.Stream")
With Stream
.Open
.CharSet = "utf-8"
.WriteText strText
.SaveToFile strFile, 2
End With
Set Stream = Nothing
End Sub
euc-kr 을 utf-8로 utf-8 을 euc-kr 로 바꾸기
utf-8 을 ecu-kr
이것은 utf-8을 자바스크립트로 escape 시켜서
<%@LANGUAGE="VBSCRIPT" CODEPAGE="949"%>
<% Response.CharSet = "euc-kr" %>
<%
bb = unescape(Request("bb"))
sample = Request("sample")
sample1 = unescape(Request("sample1"))
Response.Write bb & "<br>"
Response.Write sample & "<br>"
Response.Write sample1 & "<br>"
%>
<% @LANGUAGE='VBSCRIPT' CODEPAGE='65001' %>
<% Response.CharSet = "utf-8" %>
<script>
function checkForm(f){
f.sample1.value = escape(f.sample.value);
}
</script>
<form Method="POST" name="user" action="kor8.asp" onsubmit="return checkForm(this)">
<input type="hidden" name="bb" value="<%=escape("가나다라마바사")%>">
<input type="image" src="zzzzzzz.jpg">
<input type="hidden" name="sample1" id="textfield" />
<input type="text" name="sample" id="textfield" />
</form>
euc-kr 을 utf-8로
이것은 걍 함수를 사용
Public Function toUTF8(szSource As String) As String
On Error GoTo ErrHandler
Dim szChar As String
Dim WideChar As Long
Dim nLength As Integer
Dim i As Integer
nLength = Len(szSource)
For i = 1 To nLength
szChar = Mid(szSource, i, 1)
If Asc(szChar) < 0 Then
WideChar = CLng(AscB(MidB(szChar, 2, 1))) * 256 + AscB(MidB(szChar, 1, 1))
If (WideChar And &HFF80) = 0 Then
toUTF8 = toUTF8 & "%" & Hex(WideChar)
ElseIf (WideChar And &HF000) = 0 Then
toUTF8 = toUTF8 & _
"%" & Hex(CInt((WideChar And &HFFC0) / 64) Or &HC0) & _
"%" & Hex(WideChar And &H3F Or &H80)
Else
toUTF8 = toUTF8 & _
"%" & Hex(CInt((WideChar And &HF000) / 4096) Or &HE0) & _
"%" & Hex(CInt((WideChar And &HFFC0) / 64) And &H3F Or &H80) & _
"%" & Hex(WideChar And &H3F Or &H80)
End If
Else
toUTF8 = toUTF8 + szChar
End If
Next
Exit Function
ErrHandler:
toUTF8 = ""
End Function
utf8.asp
<% @LANGUAGE='VBSCRIPT' CODEPAGE='65001' %>
<% Response.CharSet = "utf-8" %>
<form Method="POST" name="user" action="kor8.asp">
<input type="hidden" name="bb" value="<%=escape("가나다라마바사")%>">
<input type="image" src="zzzzzzz.jpg"></form>
kor8.asp<%@LANGUAGE="VBSCRIPT" CODEPAGE="949"%>
<% Response.CharSet = "euc-kr" %> <%bb = unescape(Request("bb"))
Response.Write bb & "<br>"%>
utf-8 <--> euc-kr 변경
- 페이지 속성 변경(asp)
UTF-8 : <%@ codepage="65001" language="VBScript" %>
EUC-KR : <%@ codepage="949" language="VBScript" %>
- html 메타 변경
UTF-8 : <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
EUC-KR : <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
- Session.CodePage
UTF-8 : Session.CodePage = 65001
EUC-KR : Session.CodePage = 949
- Response.ChaRset
UTF-8 :Response.ChaRset = "utf-8"
참조 : 대표적인 텍스트 인코딩 코드 페이지 값
- 0 : ANSI (기본값)
- 949 : 한국어 (EUC-KR)
- 65001 : 유니코드 (UTF-8)
- 65535 : 유니코드 (UTF-16)
- 상기 처럼 마무리 짓고 아래 툴을 이용하여 텍스트를 변경한다.
모든 텍스트 변경 프로그램
http://www.shop-wiz.com/wizboard.php?BID=asp3&GID=root&mode=view&UID=45
- 데이타 베이스 변경
데이타 베이스는 현재 varchar, text.. 등으로 된것을 nvarchar, ntext.. 등으로 변경
-
데이타 입력시 Insert [into] table_name [(column_list)] Value N[data_value]
처럼 N을 붙혀준다. -
upload componet 변경 업로드 컴포넌트 중 일부(사이트 겔럭시) 같은 경우 한글 지원이 되지 않는다. 그러므로 다른 업로드 컴포넌트를 선택해야 한다.