Feedback

C# - string to bytearray - bytearray to string

Veröffentlicht von am 14.07.2016
(1 Bewertungen)
Konvertiert einen string in ein byte[] oder ein byte[] in einen string. Es gibt jeweils eine Überladung. Wird kein Encoding angegeben, dann wird Encoding.Default verwendet.
GFU-Schulungen  [Anzeige]

VB.NET Komplett

Sie stehen vo der Aufgabe, individuelle Anwendungen für Windows zu schreiben. Hier ist VB.NET die optimale Sprache. Sie erlernt sich recht leicht und passt sich komplett in die .NET Umgebung von Microsoft ein. Nach der Schulung entwickeln Sie anwenderfreundliche Programme in VB.NET . Mit den objektorientierten Modellen in VB.NET erzeugen Sie außerdem wiederverwendbare Komponenten.

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

 /// <summary>
        /// converts string to byte[]
        /// </summary>
        /// <param name="str">string (default encoding)</param>
        /// <returns>byte[] from string</returns>
        public static byte[] StringToByteArray(string str)
        {
            return StringToByteArray(str,Encoding.Default);
        }
        /// <summary>
        /// converts string to byte[]
        /// </summary>
        /// <param name="str">string</param>
        /// <param name="encoding">Encoding</param>
        /// <returns>byte[] from string</returns>
        public static byte[] StringToByteArray(string str, Encoding encoding)
        {
            return encoding.GetBytes(str);
        }
        /// <summary>
        /// converts  byte[] to string
        /// </summary>
        /// <param name="arr">byte[]</param>
        /// <returns>string from byte[] (default encoding)</returns>
        public static string ByteArrayToString(byte[] arr)
        {
            return ByteArrayToString(arr, Encoding.Default);
        }
        /// <summary>
        /// converts  byte[] to string
        /// </summary>
        /// <param name="arr">byte[]</param>
        /// <param name="encoding">Encoding</param>
        /// <returns>string from byte[]</returns>
        public static string ByteArrayToString(byte[] arr, Encoding encoding)
        {
            return encoding.GetString(arr);
        }

4 Kommentare zum Snippet

Koopakiller schrieb am 15.07.2016:
Und warum nicht direkt Encoding.Default.GetBytes(...) o.ä. aufrufen?
Dein Code abstrahiert zwar den Aufruf, sehe hier aber bisher keinen Vorteil darin.
Martin Dauskardt schrieb am 15.07.2016:
Weil Anfänger oft über die Codierung stolpern (bspw. Sonderzeichen/Ascii).
Man sollte natürlich wissen, wie die Bytes codiert sind. Wer mit default codiert und ausliest ist in den meisten Fällen schon gut beraten, aber nicht jeder weiß das oder denkt immer daran. Deshalb das Snippet. Es stellt sicher, dass wenn man sich nicht sicher ist, die default-codierung verwendet wird. Wie gesagt, alles mit dem Fokus auf die Anfänger.
Koopakiller schrieb am 16.07.2016:
Ok, mit Bezug auf Anfänger macht das Sinn. Ich hoffe das einige früher oder später auch hinterfragen was dahinter steckt :)
Martin Dauskardt schrieb am 17.07.2016:
Hier z.B. könnte er mit seiner Recherche beginnen: https://www.w3.org/International/questions/qa-what-is-encoding.de :)
 

Logge dich ein, um hier zu kommentieren!