win7下记事本里的中文复制到vc6.0中显示???乱码

lp9521 2010-10-16 07:07:41
.c文件,编辑打开时是用记事本打开的,这时将其中代码(包含汉字注释等)复制,转到 VC++ 6.0 新建好的正确的project之下的新建files (选的是C++ sourse,命名也是后缀.c) workplace 中 ,粘贴以后,文字全部是“??” 代替的乱码。
但是,我转而用记事本打开之前的.c文件,然后,复制,粘贴,汉字能正常显示。并且word 中复制过来的也是正常的。
...全文
1147 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
srbycc 2012-02-29
  • 打赏
  • 举报
回复
两个可以试试~~
srbycc 2012-02-29
  • 打赏
  • 举报
回复
1、请确认你选择的区域是中国(Control Panel\Clock, Language, and Region);
2、如果还是不行,请修改注册表

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FontAssoc\Associated Charset]
"ANSI(00)"="YES"
"OEM(FF)"="YES"
"SYMBOL(02)"="NO"

用记事本保存 ***.reg,双击导入。

或者
01.将区域语言选择位中文,并且选择非UNicode语言位中文。更改完毕之后你需要中重新启动你的计算机。

引自:
http://bbs.kafan.cn/thread-711997-1-1.html
cbzjzsb123 2012-02-29
  • 打赏
  • 举报
回复
srbycc 2012-02-29
  • 打赏
  • 举报
回复
win7 复制粘贴的时候出现文字乱码

导致该问题的原因是输入法设置不当。Windows 7默认的输入法为英语,键盘模式为美式键盘,同时提供的还有中文键盘的模式,由于使用英文美式键盘没有任何问题,所以大家在设置的时候,也就习惯性的把中文键盘删除,只保留英文键盘。就是因为这个原因才导致复制时出现乱码的问题。

解决的办法是删除英文的美式键盘模式,添加中文键盘模式并且设置为默认值。

具体操作步骤是:在系统桌面任务栏上的语言栏单击鼠标右键,在弹出的菜单中选择“设置”命令,进入到“文字服务和输入语言”对话框,切换至“设置”选项卡,在“已安装的服务”列表中找到键盘模式为美国英语键盘布局的英语输入法,将其删除,然后将默认的输入语言设定为“中文(中国)-简体中文-美式键盘”,最后保存退出即可。若不能解决问题,建议您在剪切和粘贴时都启动中文输入法,这样也可以消除乱码现象。

引自:
http://bbs.kafan.cn/thread-711997-1-1.html
lazy_2010 2010-10-16
  • 打赏
  • 举报
回复
剪贴板的 Copy/paste 格式的问题,从 winxp 开始就有这个问题的,是操作系统的问题,不好解决;win2000 是否有这个问题,没有印象了。

根源在于 记事本 在 Copy 的时候,粘贴的是 UNICODE 格式的字符串,而不是有效的 MBCS 字符串;

而很多 MBCS 的软件,在 Paste 的时候,认为剪贴板中的字符串是 MBCS 的,试图获取 CF_TEXT 格式的字符串;而由于 copy 的时候没有 CF_TEXT 格式的数据,系统提供的是按照英文系统从 CF_UNICODETEXT 转换而来的,就成了乱码。

你可以查看 GetClipboardData 函数的 MSDN,然后进行分析。
傻X 2010-10-16
  • 打赏
  • 举报
回复
部长不说解决方法?
lp9521 2010-10-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 lsq19871207 的回复:]
复制有中文的字符串时,注意在复制前将输入法设置成中文的就试试
[/Quote]
为什么?我无意间这样作,成功了。但是,可不可以有个什么设置,让这个问题没这么麻烦?
信阳毛尖 2010-10-16
  • 打赏
  • 举报
回复
复制有中文的字符串时,注意在复制前将输入法设置成中文的就试试
lp9521 2010-10-16
  • 打赏
  • 举报
回复
是的,我试过在vs2010下,正常。
lp9521 2010-10-16
  • 打赏
  • 举报
回复
惑疑中,有没有什么设置,解决这一问题?我vc6.0中设置的是 tools->options->
GateGory:All Windows
Font:Fixedsys
Eleven 2010-10-16
  • 打赏
  • 举报
回复
应该是编码问题吧,VC6默认是Mulit-Byte编码的,你负责到VS2005、VS2008下应该没有这个问题

16,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧