Classic ASP のテストページです。
情報が古いので参考程度に読んだりテストしてみてください。
三流君(TOP)
/ASPで遊ぶ
/ASP記事一覧を見る
分類:
[Form関係]
/DB系ADOを使い(
[Mdb接続]
[CSV接続]
[Excel接続])
/[ASPでTextFileを操作]
/[VBScript関数ほか]
2進数文字列を受け取りHEX16進文字列を返す(後ろから計算する)
自作した2進数文字列から16進数文字列への変換ルーチンを呼んでます。
文字列の後ろから4ビット単位で1つの16進数文字列を作成してます
※詳細は、ソースと詳細解説のページを見てください。
受け取ったデータは
111010
16進数に変換すると
3A
です
テストデータの入力
2進数を使用したサンプル(ソースの紹介)
詳細解説は[http:/asp/backno/asp094.html]を見てください
下記、/cgi-bin/test/test094-3.aspのソース(中身)です
|
2進数 を 使った ソースコードを紹介する表示色の説明:ASP VBScriptは <% 〜 %> キーワードは2進数 です。
<%@LANGUAGE=VBScript%>
<html>
<head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis">
<title>2進数文字列を受け取りHEX16進文字列を返す(後ろから計算する)</title>
</head>
<body>
<h1>2進数文字列を受け取りHEX16進文字列を返す(後ろから計算する)</h1>
自作した2進数文字列から16進数文字列への変換ルーチンを呼んでます。<br>
文字列の後ろから4ビット単位で1つの16進数文字列を作成してます<br>
※詳細は、ソースと詳細解説のページを見てください。<br>
<hr>
<%
'Request.ServerVariables("REQUEST_METHOD")でPOST/GETを判断
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then 'POST判断
CHK_DATA = Request.Form("DATA") 'データを変数に保存
Else 'GET
'Request.QueryStringの値を取出す
CHK_DATA = Request.QueryString("DATA") 'データを変数を保存
End If
'長さをチェックする
If Len(CHK_DATA) <> 0 Then '文字が入っていたら
Response.Write "受け取ったデータは<br>"
Response.Write Server.HTMLEncode(CHK_DATA)
'関数を呼んで、16進数に変換して表示する
Response.Write "<br>16進数に変換すると<br>"
Response.Write STR2toHEX16_B(CHK_DATA) & "<br>です<HR>"
Else
CHK_DATA = "11110101" 'テスト用の初期値を勝手に代入無くてもいいけど
End If
%>
テストデータの入力<br>
<FORM ACTION="test094-3.asp" METHOD="POST">
調査したい2進数の文字列を入力してください。<br>
<INPUT TYPE="text" SIZE="20" NAME="DATA" VALUE="<%=CHK_DATA%>">
<br><INPUT TYPE="submit" VALUE="変換開始"><br>
↑いろいろと遊んでみてください↑
</FORM>
<br>
</body>
</html>
<%
'2進文字列を受け取り16進文字列を返す(後ろからチェック)
Function STR2toHEX16_B(str2)
Dim strHEX
Dim n 'ループカウンタ
Dim i 'ループのカウンタ
Dim n8421 '8 4 2 1の数値計算用
Dim nBYTE
strHEX = "" '結果のエリアを初期化する
n8421 = 1 '初期値に1を代入する(下から計算したいので)
nBYTE = 0 '計算用変数を初期化
'文字数分ループする
For n = Len(str2) To 1 Step -1 '後ろからループを作る
'ビットが立っているかチェックする
If Mid(str2, n + i, 1) = "1" Then
nBYTE = nBYTE + n8421 'ビットに対応した数値を+する
End If
'次のビットを計算したいので*2で計算 1.2.4.8.16.32...としたい
n8421 = n8421 * 2
Next
'計算して、数値が完成したので16進文字にしてセットする
strHEX = Hex(nBYTE)
'リターン値をセットして関数を抜ける
STR2toHEX16_B = strHEX
End Function
%>
|
|
Googleで関連項目を検索する
[キーワード:2進数] と サンプル|解説|Dim|Set で検索
↓で検索して他のページも確認してみてください。
あれ?私のページが検索に載ってない(笑)一度お試しを(私のページに、また戻ってきてね(爆))
[Topへ戻る]
−−>[ASP系のTOPへ戻る]
−−>[記事一覧を見る]
リンク 三流君 ASP系 の 解説を項目ごとにまとめてみました
まぁ、基本はデータの受け取りかなぁ。
・[Form等を使用したデータのやり取り]・・・ASPと言っても、HTMLの入力フォームからデータを受け取ります。POSTやGETでやりとりを押さえますか。
次は、データの入出力 で ADOを使った(ADOで接続) と SQLの解説を少々
・[ADOでMdbファイルを使う]・・・MDBと接続して、簡単な追加・更新・削除を行った。
・[ADOでExcelと接続してみた]・・・.xlsと接続してSQLを使ってみた。
・[ADOでCSVと接続してみた]・・・.CSV テキストを読み出した。※更新・削除はできません
DBが使えるので、あまり使用しないけど、普通のテキストファイル処理
・[テキストファイル処理]・・・ファイルを開いて、書き込む。1行読み込みなどを軽く
VBScriptでFormat関数が無いなど、微妙にVBAと違うけど
[VBScript関数関係の説明]・・・少し、処理を書いてみた。
[その他処理サンプル]・・・あまり良いサンプル作れなかったけど。。。
何かの参考となれば幸いです。
その他:blogや広告↓
[日記的なblog]← あまり更新してないけど・・・
[永遠の下書き日記?]← 恥ずかしいのであまり載せてないけど・・・
[ひとりで掲示板?] ←一人で?掲示板?ぉぃぉぃ
[Topへ戻る]
−−>[ASP系のTOPへ戻る]
−−>[記事一覧を見る]
現在時刻は、2019/12/11 13:15:45です。