How can i convert an UTF-8 string into an ISO-8859-1 string?
From stackoverflow
-
.NET Strings are all UTF-16 internally. There is no UTF-8 or ISO-8859-1 encoded
System.Stringin .NET. To get the binary representation of the string in a particular encoding useSystem.Text.Encodingclass:byte[] bytes = Encoding.GetEncoding("iso-8859-1").GetBytes("hello world");leppie : Almost ;) UTF8 string -> bytes -> ISO-88590-1 stringMehrdad Afshari : @leppie: What's a UTF8 or ISO-88590-1 string? Are those anything except a sequence of bytes? -
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);leppie : Ahh, never knew about the Convert method :)Tom : Thanks, but how can I output this: Response.Write(isoBytes) does not work?Tom : byte[] srcBytes = utf_8.GetBytes(srcstr); byte[] tgtBytes = System.Text.Encoding.Convert(utf_8, iso_8859_1, srcBytes); Response.Write(tgtBytes);
0 comments:
Post a Comment