新来求教:字符集转换的问题
我要用UnicodeBE读一个文件,里面每个字符,都按照一个转换表来转换成shift_JIS,但是转换后出来的都是乱码。FileStream fs = new FileStream("aaa.txt", FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs, Encoding.GetEncoding("shift_JIS"));
char[] c = vLine.ToCharArray(); //vLine中是要转换的内容
char[] ci = new char[c.Length];
for (int i = 0; i < c.Length; i++)
{
string ostr = Convert.ToString(c[i], 16).ToUpper().PadLeft(4, '0');
//CharCodeTable.getCode(ostr) 这个方法是参照对照表,根据UnicodeBE编码获得shift_JIS编码
ci[i] = (char)Convert.ToInt32(CharCodeTable.getCode(ostr), 16);
}
Encoding encode = Encoding.GetEncoding("shift_JIS");
byte[] bi = encode.GetBytes(ci);
bw.Write(bi);
以上是我用的方法,请高人指教一二,万分感谢