Tom
Tom

Reputation: 6707

How to convert string to "iso-8859-1"?

How can i convert an UTF-8 string into an ISO-8859-1 string?

Upvotes: 13

Views: 42617

Answers (2)

John Feminella
John Feminella

Reputation: 311496

Try:

        System.Text.Encoding iso_8859_1 = System.Text.Encoding.GetEncoding("iso-8859-1");
        System.Text.Encoding utf_8 = System.Text.Encoding.UTF8;

        // Unicode string.
        string s_unicode = "abcéabc";

        // Convert to ISO-8859-1 bytes.
        byte[] isoBytes = iso_8859_1.GetBytes(s_unicode);

        // Convert to UTF-8.
        byte[] utf8Bytes = System.Text.Encoding.Convert(iso_8859_1, utf_8, isoBytes);

Upvotes: 23

Mehrdad Afshari
Mehrdad Afshari

Reputation: 421978

.NET Strings are all UTF-16 internally. There is no UTF-8 or ISO-8859-1 encoded System.String in .NET. To get the binary representation of the string in a particular encoding use System.Text.Encoding class:

byte[] bytes = Encoding.GetEncoding("iso-8859-1").GetBytes("hello world");

Upvotes: 5

Related Questions