
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
書き方はいろいろあると思いますが、参考までにデコードの例・・・。
※ソースをそのまま貼り付けたら、かなりみづらくなってしまいました。
Sub Main()
Dim pos As Long
Dim Out1 As Long
Dim Out2 As Long
Dim prst As Long
Dim rText As String
rText = "%82%B1%82%EA%82%C5%82%C5%82%AB%82%E9%82%CD%82%B8%82%C5%82%B7%81B"
pos = 1
Do
prst = InStr(pos, rText, "%")
If prst = 0 Then Exit Do
Out1 = Int("&H" & Mid$(rText, prst + 1, 2))
If ((&H81 <= Out1 And Out1 <= &H9F) Or _
(&HE0 <= Out1 And Out1 <= &HEF)) Then
If Mid$(rText, prst + 3, 1) = "%" Then
Out2 = Int("&H" & Mid$(rText, prst + 4, 2))
If &H40 <= Out2 And Out2 <= &HFC Then
rText = Left$(rText, prst - 1) & Chr(Val("&H" & Mid$(rText, prst + 1, 2) & Mid$(rText, prst + 4, 2))) & Right$(rText, Len(rText) - prst - 5)
Else
rText = Left$(rText, prst - 1) & Chr(Val("&H" + (Mid$(rText, prst + 1, 2)))) & Right$(rText, Len(rText) - prst - 2)
End If
pos = prst + 1
Else
Out2 = Asc(Mid$(rText, prst + 3, 1))
If &H40 <= Out2 And Out2 <= &HEF Then
rText = Left$(rText, prst - 1) & Chr(Val("&H" & Mid$(rText, prst + 1, 2) & Hex(Asc(Mid$(rText, prst + 3, 1))))) & Right$(rText, Len(rText) - prst - 3)
Else
rText = Left$(rText, prst - 1) & Chr(Val("&H" + (Mid$(rText, prst + 1, 2)))) & Right$(rText, Len(rText) - prst - 2)
End If
pos = prst + 1
End If
Else
rText = Left$(rText, prst - 1) & Chr(Val("&H" + (Mid$(rText, prst + 1, 2)))) & Right$(rText, Len(rText) - prst - 2)
pos = prst + 1
End If
Loop
Debug.Print rText
End Sub
No.1
- 回答日時:
単に、1byteづつ変換すればいいだけだと思いますが。
BASE64は、単に1byteのバイナリ(0~255)を文字に置き換えているだけですから、半角も全角も関係無いはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- 英語 アルファベット順の4文字以上の英単語 10 2022/07/30 22:42
- Word(ワード) Windows11キーボードの調子が悪いので治し方を教えてください。 【症状】 1つ目 キーボードの 5 2022/07/03 14:51
- Android(アンドロイド) 海外のAndroid 端末の場合、日本語全角は、どう表示されるのでしょうか? 1 2022/10/02 21:16
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- マウス・キーボード 何故、ローマ字や英語を全角で打つ? 5 2022/05/15 09:36
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/03/09 16:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
住宅にカナを入力する際に丁目...
-
VBA 文字に半角が含まれて...
-
英数字のみ全角から半角に変換
-
cgi perlの条件式にて
-
全角英数字の必要性が理解できない
-
Excelの中に全角ひらがな、漢字...
-
Accessのテキストボックスの入...
-
CString Format にて全角空白文...
-
URL末のスペースを削除したいの...
-
VBAでの全角数字と半角数字の判...
-
VB.net、テキストボックス入力...
-
エクセルの検索が正しくできな...
-
HTMLでスペース部分を作るには
-
Accessで日付や数値を全角で表...
-
スペースの削除ができません
-
VBでのカナの自動入力方法について
-
【ExcelVBA】英数記号の半角変換
-
[Excel VBA] ODBCによる外部デ...
-
封筒の宛先で縦書きの書き方
-
CGI.pmでHTMLのネームエンティ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
住宅にカナを入力する際に丁目...
-
英数字のみ全角から半角に変換
-
VBA 文字に半角が含まれて...
-
IEからEdgeへの移行に伴うIMEの...
-
全角英数字の必要性が理解できない
-
COBOL・全角判定
-
word差し込み印刷 半角カタカ...
-
エクセルにMicrosoft Barcode C...
-
プログラミングでは、半角括弧...
-
メモ帳の段落の揃え方
-
エクセルの検索が正しくできな...
-
エクセルでの”々”の扱い
-
char型全角数字から、int型半角...
-
CString Format にて全角空白文...
-
.NET3.5におけるキーボードの「...
-
半角/全角文字混在データの分...
-
Accessで日付や数値を全角で表...
-
[Excel VBA] ODBCによる外部デ...
-
VB.net、テキストボックス入力...
-
改行のないテキストを指定バイ...
おすすめ情報