c# - How to convert a byte array to a string

Convert a byte Array to a String
The Array class provides methods for creating, manipulating, searching, and sorting arrays. The Array class is not part of the System.Collections namespaces. However, it is still considered a collection because it is based on the IList interface. An element is a value in an Array. The length of an Array is the total number of elements it can contain. The Array has a fixed capacity.

The following .net c# tutorial code demonstrates how we can convert a byte Array to a String. That means we will get a String instance from byte Array elements. In this .net c# example code, we will use the ASCIIEncoding class GetString() method and Encoding class GetString() method.

The Encoding class represents the character encoding. Encoding is the process of transforming a set of Unicode characters into a sequence of bytes and decoding is the process of transforming a sequence of encoded bytes into a set of Unicode characters.

ASCIIEncoding class represents an ASCII character encoding of Unicode characters. ASCIIEncoding GetString() method decodes a range of bytes from a byte Array into a String. This method returns a String containing the results of decoding the specified sequence of bytes.

The Encoding class Default property gets the default encoding for this .NET implementation. Encoding GetString(Byte[]) method overload when overridden in a derived class that decodes all the bytes in the specified byte Array into a String. This method returns a String that contains the results of decoding the specified sequence of bytes.

So finally, using this ASCIIEncoding GetString() method and Encoding GetString(Byte[]) method we can convert a byte Array to a String.
convert-byte-array-to-string.aspx

<%@ Page Language="C#" AutoEventWireup="true"%>  

<!DOCTYPE html>  
<script runat="server">  
    protected void Button1_Click(object sender, System.EventArgs e)  
    {
        byte[] bytearray = new byte[] {97,114,114,97,121,32,101,120,97,109,112,108,101,115 };
        string txt = System.Text.ASCIIEncoding.ASCII.GetString(bytearray);

        //another way to convert byte array to string
        //string txt = System.Text.Encoding.Default.GetString(bytearray);

        Label1.Text = "byte array<br />";
        foreach(byte b in bytearray)
        {
            Label1.Text += b + " = " + Convert.ToChar(b).ToString()+  "<br />";
        }

        Label1.Text += "<br />Converted String: " + txt;
    }  
</script>  

<html xmlns="http://www.w3.org/1999/xhtml">  
<head id="Head1" runat="server">  
    <title>c# example - convert byte array to string</title>  
</head>  
<body>  
    <form id="form1" runat="server">  
    <div>  
        <h2 style="color:DarkBlue; font-style:italic;">  
            c# example - convert byte array to string
        </h2>  
        <hr width="550" align="left" color="LightBlue" />    

        <asp:Label   
            ID="Label1"   
            runat="server"  
            Font-Size="X-Large"  
            >  
        </asp:Label>  
        <br /><br />
        <asp:Button   
            ID="Button1"   
            runat="server"   
            Text="convert byte array to string"  
            OnClick="Button1_Click"
            Height="40"  
            Font-Bold="true"  
            />  
    </div>  
    </form>  
</body>  
</html>