Từ 1 tới 1 trên tổng số 1 kết quả

Đề tài: Mã hóa dữ liệu nhị phân thành văn bản trong lập trình C#

  1. #1
    No Avatar
    dvbooks Khách

    Mặc định Mã hóa dữ liệu nhị phân thành văn bản trong lập trình C#

    Bạn cần chuyển dữ liệu nhị phân sang một dạng sao cho có thể được lưu trữ trong một file văn bản ASCII (chẳng hạn file XML), hoặc được gởi đi trong e-mail.

    Sử dụng các phương thức tĩnh ToBase64String và FromBase64String của lớp System.Converter để chuyển đổi qua lại giữa dữ liệu nhị phân và chuỗi được mã hóa theo Base64.

    Base64 là một kiểu mã hóa cho phép bạn mô tả dữ liệu nhị phân như một dãy các ký tự ASCII để nó có thể được chèn vào một file văn bản hoặc một e-mail, mà ở đó dữ liệu nhị phân không được cho phép. Base64 làm việc trên nguyên tắc sử dụng 4 byte để chứa 3 byte dữ liệu nguồn và đảm bảo mỗi byte chỉ sử dụng 7 bit thấp để chứa dữ liệu. Điều này có nghĩa là mỗi byte dữ liệu được mã hóa theo Base64 có dạng giống như một ký tự ASCII, nên có thể được lưu trữ hoặc truyền đi bất cứ nơi đâu cho phép ký tự ASCII.

    Lớp Convert cung cấp hai phương thức ToBase64String và FromBase64String để mã hóa và giải mã Base64. Tuy nhiên, trước khi mã hóa Base64, bạn phải chuyển dữ liệu thành mảng kiểu byte; và sau khi giải mã, bạn phải chuyển mảng kiểu byte trở về kiểu dữ liệu thích hợp (xem lại mục 2.2 và 2.3).
    Ví dụ sau minh họa cách sử dụng lớp Convert để mã hóa và giải mã Base64 với chuỗi Unicode, giá trị int, giá trị decimal. Đối với giá trị decimal, bạn phải sử dụng các phương thức ByteArrayToDecimal và DecimalToByteArray

    Visual C# Code:
    1. // Mã hóa Base64 với chuỗi Unicode.
    2. public static string StringToBase64 (string src) {
    3.     // Chuyển chuỗi thành mảng kiểu byte.
    4.     byte[] b = Encoding.Unicode.GetBytes(src);
    5.     // Trả về chuỗi được mã hóa theo Base64.
    6.     return Convert.ToBase64String(b);
    7. }

    Visual C# Code:
    1. // Giải mã một chuỗi Unicode được mã hóa theo Base64.
    2. public static string Base64ToString (string src) {
    3.     // Giải mã vào mảng kiểu byte.
    4.     byte[] b = Convert.FromBase64String(src);
    5.     // Trả về chuỗi Unicode.
    6.     return Encoding.Unicode.GetString(b);
    7. }

    Visual C# Code:
    1. // Mã hóa Base64 với giá trị decimal.
    2. public static string DecimalToBase64 (decimal src) {
    3.     // Chuyển giá trị decimal thành mảng kiểu byte.
    4.     byte[] b = DecimalToByteArray(src);
    5.     // Trả về giá trị decimal được mã hóa theo Base64.
    6.     return Convert.ToBase64String(b);
    7. }

    Visual C# Code:
    1. // Giải mã một giá trị decimal được mã hóa theo Base64.
    2. public static decimal Base64ToDecimal (string src) {
    3.     // Giải mã vào mảng kiểu byte.
    4.     byte[] b = Convert.FromBase64String(src);
    5.     // Trả về giá trị decimal.
    6.     return ByteArrayToDecimal(b);
    7. }

    Visual C# Code:
    1. // Mã hóa Base64 với giá trị int.
    2. public static string IntToBase64 (int src) {
    3.     // Chuyển giá trị int thành mảng kiểu byte.
    4.     byte[] b = BitConverter.GetBytes(src);
    5.     // Trả về giá trị int được mã hóa theo Base64.
    6.     return Convert.ToBase64String(b);
    7. }
    Visual C# Code:
    1. // Giải mã một giá trị int được mã hóa theo Base64.
    2. public static int Base64ToInt (string src) {
    3.     // Giải mã vào mảng kiểu byte.
    4.     byte[] b = Convert.FromBase64String(src);
    5.     // Trả về giá trị int.
    6.     return BitConverter.ToInt32(b,0);

    Trích từ "Các giải pháp lập trình C#"
    Đã được chỉnh sửa lần cuối bởi nhc1987 : 05-02-2008 lúc 02:38 PM.

Các đề tài tương tự

  1. Dịch vụ gửi hàng hóa đi Australia, gửi hàng hóa đi France, gửi hàng hóa đi Germany, gửi hàng hóa đi Janpan giá rẻ.
    Gửi bởi sales5ttico trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 1
    Bài viết cuối: 30-07-2014, 02:51 PM
  2. Algorithm Chuyển code tách chuỗi , chuẩn hóa trong văn bản TV từ VB sang C#?
    Gửi bởi gvkatashi01 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 18-11-2013, 05:24 PM
  3. Những nét văn hóa đẹp trong chuyến du lịch campuchia
    Gửi bởi hoacuoi1989 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 14-03-2013, 11:13 AM
  4. Kỹ thuật C++ Chuẩn hóa nội dung văn bản-Xử lý văn bản
    Gửi bởi minius92 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 0
    Bài viết cuối: 08-10-2012, 10:06 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn