C# Programming
05-30-2010, 08:00 AM
Hi
I had a string which consists both english and hindi characters. I want to write this in a unicode file, but some junk has been observed in the file. But, if i try to write the same data in utf8 file, it is perfectly written as it is.
what is the error?
How can i solve this?
the code is as follows:
string str1 = "This";
string str2 = "??";
string str3 = str1 + "~" + str2;
StreamWriter sw11 = new StreamWriter(File.Open(@"C:\abc.txt", FileMode.Append));
sw11.WriteLine(str3);
sw11.Close();
str3 = Encoding.Unicode.GetString(Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes(str1))) + Encoding.Unicode.GetString(Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes("~"))) + Encoding.Unicode.GetString(Encoding.Convert(Encoding.UTF8, Encoding.Unicode, Encoding.UTF8.GetBytes(str2)));
StreamWriter sw12 = new StreamWriter(File.Open(@"C:\abcd.txt", FileMode.Append));
sw12.WriteLine(str3);
sw12.Close();
I had a string which consists both english and hindi characters. I want to write this in a unicode file, but some junk has been observed in the file. But, if i try to write the same data in utf8 file, it is perfectly written as it is.
what is the error?
How can i solve this?
the code is as follows:
string str1 = "This";
string str2 = "??";
string str3 = str1 + "~" + str2;
StreamWriter sw11 = new StreamWriter(File.Open(@"C:\abc.txt", FileMode.Append));
sw11.WriteLine(str3);
sw11.Close();
str3 = Encoding.Unicode.GetString(Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes(str1))) + Encoding.Unicode.GetString(Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes("~"))) + Encoding.Unicode.GetString(Encoding.Convert(Encoding.UTF8, Encoding.Unicode, Encoding.UTF8.GetBytes(str2)));
StreamWriter sw12 = new StreamWriter(File.Open(@"C:\abcd.txt", FileMode.Append));
sw12.WriteLine(str3);
sw12.Close();