base64是什么,在 C# 中对 Base64 字符串进行编码和解码

原文链接:https://blog.csdn.net/ty_oldman/article/details/116306785

                https://blog.csdn.net/qq_55752792/article/details/139681358

base64是什么
Base64编码,是由64个字符组成编码集:26个大写字母AZ,26个小写字母az,10个数字0~9,符号“+”与符号“/”。Base64编码的基本思路是将原始数据的三个字节拆分转化为四个字节,然后根据Base64的对应表,得到对应的编码数据。

当原始数据凑不够三个字节时,编码结果中会使用额外的**符号“=”**来表示这种情况。

 

  1. 使用 C# 中的 Convert.ToBase64String() 方法将字符串编码为 Base64 字符串
  2. 使用 C# 中的Convert.FromBase64String() 方法从 Base64 字符串解码字符串

使用 C# 中的 Convert.ToBase64String() 方法将字符串编码为 Base64 字符串

Convert 类可以在 C# 中将一种基本数据类型转换为另一种基本数据类型。Convert.ToBase64String() 方法将字节数组转换为 C# 中的 base64 字符串变量。要将字符串变量转换为 base64 字符串,我们必须首先将该字符串转换为字节数组。Encoding.UTF8.GetBytes() 方法将字符串变量转换为 C# 中的字节数组。以下代码示例向我们展示了如何使用 C# 中的 Convert.ToBase64String() 函数将字符串变量编码为 base64 字符串。

复制代码
using System;
using System.Text;

namespace encode_and_decode_base64_string
{
    class Program
    {
        public static string Base64Encode(string plainText)
        {
            var plainTextBytes = Encoding.UTF8.GetBytes(plainText);
            return System.Convert.ToBase64String(plainTextBytes);
        }
        static void Main(string[] args)
        {
            string original = "This is a string";
            Console.WriteLine("Original String = " + original);
            string base64 = Base64Encode(original);
            Console.WriteLine("Encoded String = "+base64);
        }
    }
}
复制代码

输出:

Original String = This is a string
Encoded String = VGhpcyBpcyBhIHN0cmluZw==

我们将值 This is a string 的字符串变量 original 编码为值 VGhpcyBpcyBhIHN0cmluZw== 的 base64 字符串 base64。我们首先使用 Encoding.UTF8.GetBytes(plainText) 函数将字符串 plainText 转换为字节数组 plainTextBytes。我们使用 Convert.ToBase64String(plainTextBytes) 函数将字节数组 plainTextBytes 编码为 base64 字符串。

使用 C# 中的 Convert.FromBase64String() 方法从 Base64 字符串解码字符串

Convert.FromBase64String() 方法可以将 base64 字符串变量转换为 C# 中的字节数组。要将 base64 编码的字符串转换为标准字符串变量,我们必须使用以下方法中的 [Encoding.UTF8.GetString() 方法将 Convert.FromBase64String() 方法返回的字节数组转换为字符串变量。C#。以下代码示例向我们展示了如何使用 C# 中的 Convert.FromBase64String() 函数将 base64 字符串解码为字符串变量。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.Text;
 
namespace encode_and_decode_base64_string
{
    class Program
    {
        public static string Base64Decode(string base64EncodedData)
        {
            var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);
            return System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
        }
        static void Main(string[] args)
        {
            string base64 = "VGhpcyBpcyBhIHN0cmluZw==";
            Console.WriteLine("Encoded String = "+base64);
            string original = Base64Decode(base64);
            Console.WriteLine("Decoded String = "+original);
        }
    }
}

  

输出:

Encoded String = VGhpcyBpcyBhIHN0cmluZw==
Decoded String = This is a string

我们将值 VGhpcyBpcyBhIHN0cmluZw== 的 base64 字符串 base64 解码为值为 This is a string 的字符串变量 original。我们首先使用 Convert.FromBase64String(base64EncodedData) 函数将 base64EncodedData 字符串转换为字节数组 base64EncodedBytes。我们使用 Encoding.UTF8.GetString(base64EncodedBytes) 函数将字节数组 base64EncodedBytes 转换为字符串变量 original。

posted @   yinghualeihenmei  阅读(286)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2023-09-05 override的作用
2023-09-05 封装、继承、多态的概念
2023-09-05 c、c++和c#有什么不同
2022-09-05 Exception: xxx not found as file or resource问题解决
点击右上角即可分享
微信分享提示