C#中Base64编码和解码的初学者指南

介绍如何在 C# 中使用 Base64 对字符串进行编码和解码,以便在只能传输文本的场景下,传输二进制数据。
On this page

C#中Base64编码和解码的初学者指南

摘要§

如果您在使用 C#处理数据,可能需要使用 Base64 编码或解码字符串。这对于通过只能处理文本的通道传输二进制数据特别有用。在本博客文章中,我们将介绍如何在 C#中使用 Base64 编码和解码字符串。

将字符串编码为 Base64§

要在 C#中将字符串编码为 Base64,可以使用Convert类的ToBase64String方法。以下是示例代码片段:

1string originalString = "Hello, world!";
2byte[] originalBytes = Encoding.UTF8.GetBytes(originalString);
3string encodedString = Convert.ToBase64String(originalBytes);
4Console.WriteLine("Encoded string: " + encodedString);
csharp

在此示例中,我们首先使用Encoding.UTF8.GetBytes方法将原始字符串转换为字节数组。然后,我们将此字节数组传递给Convert.ToBase64String方法,该方法返回编码后的字符串。最后,我们将编码后的字符串打印到控制台。

将 Base64 解码为字符串§

要将 Base64 字符串解码回其原始字符串表示形式,可以使用Convert类的FromBase64String方法。以下是示例代码片段:

1string encodedString = "SGVsbG8sIHdvcmxkIQ==";
2byte[] encodedBytes = Convert.FromBase64String(encodedString);
3string originalString = Encoding.UTF8.GetString(encodedBytes);
4Console.WriteLine("Original string: " + originalString);
csharp

在此示例中,我们首先有编码过的字符串。然后,我们将此编码过的字符串传递给Convert.FromBase64String方法,该方法返回表示原始字符串的字节数组。最后,我们使用Encoding.UTF8.GetString方法将此字节数组转换回原始字符串。再次,我们将原始字符串打印到控制台。

使用时的注意事项§

虽然使用 Base64 编码和解码可能很有用,但还是有一些注意事项:

  1. 不要使用 Base64 进行加密。 Base64 不是加密形式,可以轻松解码。如果需要加密数据,请使用适当的加密方案。

  2. 注意 Base64 数据的增加大小。 因为 Base64 将二进制数据编码为 ASCII 文本,所以编码数据的大小可能比原始数据大多达 33%。在通过带宽有限的通道传输数据时,请将此记在心中。

  3. 在解码不受信任的数据时要小心。 如果未正确验证输入数据,则解码 Base64 数据可能会引入安全漏洞。确保仅解码受信任的数据以避免这些问题。

通过牢记这些注意事项,您可以安全有效地使用 Base64 编码和解码。

在线 base64 工具,快速验证答案§

  • All
  • English
  • 简体中文
  • Best match
  • Oldest
  • Newest
  • 2023
  • Amanda
  • Davy
  • IToolkit
  • Mia
  • 大威
  • API
  • Base64
  • Binary
  • C
  • C++
  • Checksum
  • Coding
  • Computer Science
  • CRC
  • CRC32
  • Cryptography
  • CSharp
  • CSV
  • Cyclic Codes
  • Data
  • DCOM
  • Decoding
  • Education
  • Encoding
  • Encryption
  • Functions
  • Go
  • gpt
  • Hash
  • HTML
  • Image
  • Java
  • JavaScript
  • Kotlin
  • Linux
  • Lua
  • Mac
  • MBR
  • MongoDB
  • MySQL
  • Other
  • PHP
  • Programming
  • Python
  • R
  • Redundancy
  • Rust
  • Scala
  • Security
  • SHA
  • Software
  • SQL
  • SQLServer
  • Strings
  • Swift
  • VB
  • Windows
  • Windows 7
  • Applications
  • Binary Data
  • Data Retrieval
  • Database
  • File Path
  • Image Storage
  • Language Display
  • Operating Systems
  • Srtrings
  • 编码
  • 解码