C# Base64 编码与解码代码示例
本文提供了在 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# 数据处理的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













