stream|编码|问题
问题描述:
win2000sp4中文,vs2005英文,oracle9i。
程序中,有一RichTextBox,来显示数据库的Sql语句,使用StreamWriter()把RichTextBox中的内容写入一个文本文件中,但是如果Sql语句中含有中文,就会出现乱码。
出错原因:
- 构造函数StreamWriter(String),默认情况下,以UTF-8编码来创建StreamWriter,所以出现乱码啦。
解决办法:
- 构造函数StreamWriter(String,Encoding)可以指定相应的编码。
StreamWriter sw = new StreamWriter(filename,false, System.Text.Encoding.Default);(问题解决)
System.Text.Encoding.Default这个值与操作系统的设置有关,与控制面板里的区域与语言选项有关,跟oracle的字符集差不多。