2017年09月22日

アスキー文字コード(Ox717a)を、文字("qz")に変換するユーザー定義関数(VBA) ※SQLインジェクション解析用


'文字列の中のアスキー文字コード表現を文字に変換する(例 Ox9798 → ab)
Function Hex2Char(OriginalStr As String) As String
Dim Str_Len, Cnt_Search As Integer
Dim Str_Cnv, HexStart, Str_Hex As String
Str_Len = Len(OriginalStr)
Str_Cnv = ""
HexStart = "0x"
Cnt_Search = 1
Do While Cnt_Search <= Str_Len
If Mid(OriginalStr, Cnt_Search, 2) = HexStart Then
'"0x"なら以降の16進を文字変換
Cnt_Search = Cnt_Search + 2
LoopSW = 1
Do While LoopSW = 1
If IsNumeric("&H" & Mid(OriginalStr, Cnt_Search, 2)) Then
'16進数値なら変換
Str_Hex = "&H" & Mid(OriginalStr, Cnt_Search, 2)
Str_Cnv = Str_Cnv & Chr(Val(Str_Hex))
Cnt_Search = Cnt_Search + 2
Else
'16進でない文字が出現したらループを抜ける
LoopSW = 0
End If
Loop
End If
Str_Cnv = Str_Cnv & Mid(OriginalStr, Cnt_Search, 1)
Cnt_Search = Cnt_Search + 1
Loop
Hex2Char = Str_Cnv
End Function
posted by 貝貝 at 14:06| Comment(0) | Internet | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。