//寫入資料庫時進行轉換
public string GB2312_ISO8859(string write)
{
//聲明字元集
System.Text.Encoding iso8859, gb2312;
//iso8859
iso8859 = System.Text.Encoding.GetEncoding("iso8859-1");
//國標2312
gb2312 = System.Text.Encoding.GetEncoding("gb2312");
byte[] gb;
gb = gb2312.GetBytes(write);
//返迴轉換後的字元
return iso8859.GetString(gb);
}
//讀出時進行轉換
public string ISO8859_GB2312(string read)
{
//聲明字元集
System.Text.Encoding iso8859, gb2312;
//iso8859
iso8859 = System.Text.Encoding.GetEncoding("iso8859-1");
//國標2312
gb2312 = System.Text.Encoding.GetEncoding("gb2312");
byte[] iso;
iso = iso8859.GetBytes(read);
//返迴轉換後的字元
return gb2312.GetString(iso);
}
//批量資料轉換
//其實就是將dataset的內容讀出到xml檔案,然後再輸出
public DataSet ISO8859_GB2312(DataSet ds)
{
string xml;
xml = ds.GetXml();
ds.Clear();
//聲明字元集
System.Text.Encoding iso8859, gb2312;
//iso8859
iso8859 = System.Text.Encoding.GetEncoding("iso8859-1");
//國標2312
gb2312 = System.Text.Encoding.GetEncoding("gb2312");
byte[] bt;
bt = iso8859.GetBytes(xml);
xml = gb2312.GetString(bt);
ds.ReadXml(new System.IO.StringReader(xml));
return ds;
}