如下图所示,本机系统是繁体WinServer 2012R2,新建一个控制台程序,接收输入的简体文字后,部分文字被保存成了乱码,有什么好的方法?
测试代码如下:
1 Console.WriteLine("CurrentCulter:{0}", CultureInfo.CurrentCulture.Name); 2 Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CN", false); 3 Console.WriteLine("更改后的Culter:{0}", CultureInfo.CurrentCulture.Name); 4 Console.WriteLine("更改後的CurrentCulter:{0}", CultureInfo.CurrentCulture.Name); 5 6 Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CN", false); 7 Console.WriteLine("更改后的CurrentUICulture:{0}", CultureInfo.CurrentUICulture.Name); 8 9 Console.Write("輸入值:"); 10 string xx = Console.ReadLine(); 11 Console.WriteLine("輸出值:{0}",xx);
你是为了简化说明,所以才用控制台,还是你最终的软件就是用控制台接收数据的?
只是一个简单的文件批量重命名应用,功能是通过文件所在路径、文件名扩展,要被替换的字符串、要替换成的字符串,通过控制台接收这些参数,由于系统是繁体,接收简体的时候有些简体字不能被正确接收(被转成不被识别的BIG5码)。
所以在这里提出的问题,是想解决:如何使控制台 接收到的字符串 与 输入的字符串 一模一样(而不说被转成BIG5码)?
@Cornelius: 这个问题本来就是只有以前的软件才会有的问题,最新的使用UNICODE就没有问题了。
所以如果你非得要用以前的(比如说CONSOLE)来接收,就得自己加一堆的判断语句来判断,并进行转换。
@爱编程的大叔: 有可供参考的网址什么的吗?
后台保存到数据库了么,如果是数据库,设置下数据库的字符集,怎么设置我一下子想不起来了,你百度下
没有数据库,无关数据集,就C# 控制台程序,功能就是能够 接收简体字符串并返回简体字符串。(系统是繁体)