C# Base64 编码与解码代码示例

南乔
南乔
发布时间:2026-10-13 | 4人浏览过
原创

本文提供了在 C# 中进行 Base64 编码和解码的快速实现方案,涵盖将 Base64 字符串还原为原始文本(解码)以及将普通文本转换为 Base64 格式(编码)的核心代码片段,适用于简单的数据序列化场景。

结果或目标

完成 Base64 格式的字符串与常规文本之间的双向转换,确保数据的正确性和可读性。

准备条件

  • 具备 .NET 运行环境(.NET Framework 或 .NET Core / .NET 5+)。
  • 开发工具中引用了 System 和 System.Text 命名空间。

真实操作顺序

第1步:执行 Base64 解码(从字符串到文本)

目的:将一个经过 Base64 编码的字符串还原为原始的 Unicode 或 ASCII 文本内容。

入口:已知的 Base64 字符串变量。

动作:使用 Convert.FromBase64String 将 Base64 字符串解析为字节数组,再通过 ASCIIEncoding.Default.GetString 将其转换回字符串。

注意:如果原文本包含非 ASCII 字符(如中文),建议使用 Encoding.UTF8 以确保正确解码。

string strPath = "aHR0cDovLzIwMy44MS4yOS40Njo1NTU3Ly9iYWlkdS9yaW5ncy9taWRpLzIwMDA3MzgwLTE2Lm1pZA==";
// 1. 将 Base64 字符串转换为字节数组
byte[] bpath = Convert.FromBase64String(strPath);
// 2. 将字节数组转换为字符串
strPath = System.Text.ASCIIEncoding.Default.GetString(bpath);

第2步:执行 Base64 编码(从文本到字符串)

目的:将普通的字符串转换为 Base64 格式的字符串,以便进行存储或传输。

入口:待编码的原始文本字符串。

动作:指定编码方式(如 ASCII 或 UTF8),将字符串转换为字节数组,然后调用 Convert.ToBase64String 生成最终的 Base64 字符串。

重要参数:需明确指定输入文本的字符编码集,通常推荐 UTF8 以支持多语言字符。

// 定义编码方式,这里以 ASCII 为例,实际应用中 UTF8 更通用
System.Text.Encoding encode = System.Text.Encoding.ASCII ;
// 将文本转换为字节数组
byte[] bytedata = encode.GetBytes("test");
// 将字节数组转换为 Base64 字符串
string strPath = Convert.ToBase64String(bytedata,0,bytedata.Length);

完成判断

通过打印或调试观察,解码后的字符串应恢复为原始明文;编码后的字符串应符合 Base64 规范(仅包含 A-Z, a-z, 0-9, +, / 及填充符 =)。若出现乱码,请检查编码设置是否与被编码文本的实际编码格式一致。

简要总结

C# 提供了内置的 Convert 类来处理 Base64 转换,核心在于字节数组的中介作用。掌握正确的编码指定是避免中文等复杂字符乱码的关键。以上就是 C# Base64 编码/解码实现代码的详细内容,更多关于 C# 数据处理的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表