解决Perl TK 中文输入,操作问题
来源:互联网 发布:汇通易贷 知乎 编辑:程序博客网 时间:2024/05/01 01:46
写一个tk测试玩意,读取用户输入,判断是否为目录。
代码如下:
效果如下 :
代码 my $str=encode("gb2312",$copied_text); 将utf8流转为中文的,进行操作(目录判断,或者输出)
utf8编码字串 --(作为字节流)--> perl不知道它是什么编码 ---> decode ('utf8',$foo) ---> perl知道他是utf8编码了,并将其转换为对应的unicode(两个字节)来操作(但实际存储的时候仍是utf8编码)
之所以会出现 Wide character in print at 2.pl line 19. 这样的结果,是因为perl知道你输出的变量字符串是utf8编码的多字节字符,你应该通过encode函数将该变量转换成字节流,这样perl就不会出现这个警告
综上,可以知道,perl对待外来的数据一律当作字节流处理,通过 decode 函数可以告诉 perl 当前字节流是什么编码,这时 perl 就会把他按照原来对应的编码方式内部解码为 unicode 来操作(此时这串字节流已经被perl当作是有一定意义的unicode字符串来理解了),当你要将操作完的字符串输出的时候,应该将其用encode函数按照相应的编码方式打包成字节流再输出.
- 解决Perl TK 中文输入,操作问题
- perl 解决mysql utf8中文乱码 问题
- PERL TK
- Appium 解决中文输入问题
- perl输入,排序,输出,一行代码解决所有的问题
- perl中文件操作
- 解决JSP数据输入中文乱码问题
- 解决JIRA不能输入中文的问题
- ubuntu下解决sublime2中文输入问题
- sublime Text 解决中文输入问题
- 解决Qt5无法输入中文问题
- 简单解决sublime 中文输入问题
- 解决Emacs无法输入中文的问题
- ubuntu sublime 解决中文输入问题
- 解决appium不能输入中文的问题
- 完美解决Sublime无法输入中文问题
- Perl读取Excel文件并解决中文乱码问题
- Perl Tk和DBI结合 软件匹配问题
- JBoss-4.2.3GA+Apache负载均衡及集群方案配置过程详解
- android 实现图片的边框
- Linux新手生存笔记[7]——重点命令4-tr&join&cut&paste&split
- GCC 编译选项
- 如何解决:Android中 Error generating final archive: Debug Certificate expired on 10/09/18 16:30 的错误
- 解决Perl TK 中文输入,操作问题
- Asynchronous Method Invocation 【翻译】 (一)
- 新工作的第三天
- 指向临时变量的指针的返回
- JVM工作原理、机制。
- [记录]NodeJS:服务器端的javascript
- qps:每秒查询率(Query Per Second)
- ExtJS 4应用架构设计
- 带参数的JS脚本文件