C#写入Oracle 中文乱码的解决办法
来源:互联网 发布:淘宝散装jbl耳机真相 编辑:程序博客网 时间:2024/05/10 07:28
转自:http://bbs.bccn.net/thread-310552-1-1.html
主要问题是: oracle客户端软件的字符编码与服务器端的字符编码不一致造成的。
oracle服务端字符编码为: ZHS16GBK
oracle客户端字符编码为: WE8ISO8859P1
解决办法有三种:
(1)修改客户端注册表: 找到Oracle安装注册项下的NLS_LANG,将其值改为"SIMPLIFIED CHINESE_CHINA.ZHS16GBK
(2)通过调用_putenv函数,在程序中用代码设置:
using System.Runtime.InteropServices;
...
[DllImport("msvcrt.dll")]
private static extern int _putenv(string str);
...
_putenv("NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK");
//数据库操作
_putenv("NLS_LANG = AMERICAN_AMRICA.WE8ISO8859P1");
(3)通过C#自带的函数设置环境变量
System.Environment.SetEnvironmentVarible("NLS_LANG "," SIMPLIFIED CHINESE_CHINA.ZHS16GBK");
//数据库操作
System.Environment.SetEnvironmentVarible("NLS_LANG ","AMERICAN_AMRICA.WE8ISO8859P1");
需要注意的是: 第二、三种利用函数进行设置环境变量的操作必须在数据库操作的外边才能生效。
- C#写入Oracle 中文乱码的解决办法
- Oracle写入中文为乱码
- C#中WebClient中文乱码的解决办法
- C#中WebClient中文乱码的解决办法
- oracle中文字符??乱码的解决办法
- Oracle中文乱码解决办法总结
- c#写入Mysql中文显示乱码 解决方法
- 中文乱码的解决办法
- 中文乱码的解决办法
- C# : Socket 接收中文显示乱码的解决办法
- MYSQL导入和写入中文数据乱码解决办法
- C#调用JAVA_WEBService中文乱码解决办法
- java写入中文乱码的问题解决
- 写入mysql的中文乱码问题
- oracle 10g EM中文乱码解决办法
- hibernate 的中文乱码解决办法
- js中文乱码的解决办法
- java中文乱码的解决办法
- 做了7年手工测试迷茫了怎么办?——给你的建议
- dos下at的应用
- 基于ArcGIS10.0和Oracle10g的空间数据管理平台一(C#开发)-系统功能介绍及展示
- ant读书笔记
- 数字格式化
- C#写入Oracle 中文乱码的解决办法
- 数据的标准化
- VIM教程
- 将含有makefile文件的源码加入Eclipse工程
- 自动关机bat
- phpmailer发送gmail邮件实例
- 转--修改TestDirector的字体设置
- WPF 判断值是不是NaN
- 曲折的软考经历(1)