ヘッダー
Visual Basic サンプル集
VB.NET2002対応 VB.NET2003対応 VB2005対応 VB2008対応 VB2010対応 VB2012対応 VB2013対応 VB2015対応 VB2017対応 VB2019対応 Visual Studio 2022

Base64Urlにエンコードする

2023/1/1

→ C# のサンプルに切り替える → Python のサンプルに切り替える

 

文字列をUTF-8としてBase64Urlにエンコードする

VB.NET2002対応 VB.NET2003対応 VB2005対応 VB2008対応 VB2010対応 VB2012対応 VB2013対応 VB2015対応 VB2017対応 VB2019対応 Visual Studio 2022

Dim value As String = "徳川家康ABC"
Dim base64 As String = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(value))
base64 = base64.Replace("+", "-").Replace("/", "_").Replace("=", "")
Debug.WriteLine(base64) '5b6z5bed5a625bq3QUJD

Debug.WriteLineが表示される場所

 

これでもできます。

VB2017対応 VB2019対応 Visual Studio 2022

Dim value As String = "徳川家康ABC"
Dim base64 As String = Microsoft.AspNetCore.WebUtilities.Base64UrlTextEncoder.Encode(System.Text.Encoding.UTF8.GetBytes(value))
Debug.WriteLine(base64) '5b6z5bed5a625bq3QUJD

Debug.WriteLineが表示される場所

メモ:ASP.NET以外で、この例を実行するには NuGet で Microsoft.AspNetCore.WebUtilities をインストールする必要があります。 → NuGetでパッケージをインストールする方法

 

 

文字列をShift_JISとしてBase64Urlにエンコードする

VB.NET2002対応 VB.NET2003対応 VB2005対応 VB2008対応 VB2010対応 VB2012対応 VB2013対応 VB2015対応 VB2017対応 VB2019対応 Visual Studio 2022

#If NETCOREAPP Then
'.NET CoreでShift_JISなど追加のエンコーディングを扱うために必要です。
System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance)
#End If

Dim value As String = "徳川家康ABC"
Dim base64 As String = Convert.ToBase64String(System.Text.Encoding.GetEncoding("Shift_JIS").GetBytes(value))
base64 = base64.Replace("+", "-").Replace("/", "_").Replace("=", "")
Debug.WriteLine(base64) 'k7-Q7InGjU5BQkM

Debug.WriteLineが表示される場所

 

これでもできます。

VB2017対応 VB2019対応 Visual Studio 2022

#If NETCOREAPP Then
'.NET CoreでShift_JISなど追加のエンコーディングを扱うために必要です。
System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance)
#End If

Dim value As String = "徳川家康ABC"
Dim base64 As String = Microsoft.AspNetCore.WebUtilities.Base64UrlTextEncoder.Encode(System.Text.Encoding.GetEncoding("Shift_JIS").GetBytes(value))
Debug.WriteLine(base64) 'k7-Q7InGjU5BQkM

Debug.WriteLineが表示される場所

メモ:ASP.NET以外で、この例を実行するには NuGet で Microsoft.AspNetCore.WebUtilities をインストールする必要があります。 → NuGetでパッケージをインストールする方法

 

 

オブジェクトをBase64Urlにエンコードする

オブジェクトの一例として、List(Of String) をBase64Urlにする例。

VB2019対応 Visual Studio 2022

Dim values As New List(Of String)({"Apple","徳川家康","12345"})

Dim json As String = System.Text.Json.JsonSerializer.Serialize(values)
Dim base64 As String = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(json))
base64 = base64.Replace("+", "-").Replace("/", "_").Replace("=", "")

'WyJBcHBsZSIsIlx1NUZCM1x1NURERFx1NUJCNlx1NUVCNyIsIjEyMzQ1Il0
Debug.WriteLine(base64)

Debug.WriteLineが表示される場所

メモ:この例ではオブジェクトをJSON形式で文字列化したものをBase64Urlにしています。

メモ:List(Of String)に限らず、JsonSerializerでJSON化できるオブジェクトはこの例が通用します。

 

これでもできます。

VB2019対応 Visual Studio 2022

Dim values As New List(Of String)({"Apple","徳川家康","12345"})

Dim json As String = System.Text.Json.JsonSerializer.Serialize(values)
Dim base64 As String = Microsoft.AspNetCore.WebUtilities.Base64UrlTextEncoder.Encode(System.Text.Encoding.UTF8.GetBytes(json))

'WyJBcHBsZSIsIlx1NUZCM1x1NURERFx1NUJCNlx1NUVCNyIsIjEyMzQ1Il0
Debug.WriteLine(base64)

Debug.WriteLineが表示される場所

メモ:この例ではオブジェクトをJSON形式で文字列化したものをBase64Urlにしています。

メモ:List(Of String)に限らず、JsonSerializerでJSON化できるオブジェクトはこの例が通用します。

メモ:ASP.NET以外で、この例を実行するには NuGet で Microsoft.AspNetCore.WebUtilities をインストールする必要があります。 → NuGetでパッケージをインストールする方法

 

 

バイト型の配列をBase64Urlにエンコードする

VB.NET2002対応 VB.NET2003対応 VB2005対応 VB2008対応 VB2010対応 VB2012対応 VB2013対応 VB2015対応 VB2017対応 VB2019対応 Visual Studio 2022

Dim bytes() As Byte = {&H12, &H34, &H56, &H78, &H9A, &HBC, &HDE, &HF0}

Dim base64 As String = Convert.ToBase64String(bytes)
base64 = base64.Replace("+", "-").Replace("/", "_").Replace("=", "")
Debug.WriteLine(base64) 'EjRWeJq83vA

Debug.WriteLineが表示される場所

 

これでもできます。

VB2017対応 VB2019対応 Visual Studio 2022

Dim bytes() As Byte = {&H12, &H34, &H56, &H78, &H9A, &HBC, &HDE, &HF0}

Dim base64 As String = Microsoft.AspNetCore.WebUtilities.Base64UrlTextEncoder.Encode(bytes)
Debug.WriteLine(base64) 'EjRWeJq83vA

Debug.WriteLineが表示される場所

メモ:ASP.NET以外で、この例を実行するには NuGet で Microsoft.AspNetCore.WebUtilities をインストールする必要があります。 → NuGetでパッケージをインストールする方法