最近在用lua, 发现一个有点意思的槽点啊-____-! 那就是lua貌似会使用系统所用的字符集.

具体点说, 就是在windows上, 它会使用cp936来表示代码中的中文.

来个例子:

print("中文")

把这句代码写到文本文件里, 保存的时候选择UTF-8的话, 这时你运行代码, 是会得到下面的中文乱码的:

  涓枃

但如果你把代码存为ANSI格式, 那么就能得到正确的"中文"了.

所以在使用lua时, 如果代码中含有中文的话, 请留意一下使用的环境.

ps:

为了验证我的想法, 特意在cygwin环境下试了下. 我把环境设置为

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQ8AAAA0CAIAAAAbhyqzAAADsElEQVR4nO2cz2rbMBzH9VQ+5EV21Smv0EfwNYe9RDE7DZJDKYPC2KHgS0lLF2hKS0LTdK3WcyA72JF/+mNbZLJlx98POtiWpfgn62NLFi0TAAA3WOgLAKA3wBYAXIEtALgCWwBwRbFlvlwhISHRZLdlvlztAQAqVBhGVWnyJQZAL6HCwBYAqoAtALgCWwBwBbYA4ApsAcAV2AKAK0fZksZRFKf/+cteKvFNGkfsAE86epEgFLClII0jVlxSwhnjse+L9Bt199rwtIEtBZYL8n6RsKXPeLKlGMHwJD+UcKYcKva1QU5RNvCdt/S8NI6iOOa1gXAeMcY417LU03lyCNUaOKknIb+vNI1SRK0NNI8XW9I4yu/wYas4IkTCtfuZFc8rIXWFflLabZGd1/qMyDtt2UvJaIdEVmIEbqkn4VnpvBpbEajSIj5sobsVd5HOoOU59GDo52TZuyXVtq2ByHPKsioqyc5OzEbLTzJeLBVFQIO0Zgt5w9Bz6MM3NDXzlny7JBAhSmO0VmgGXv6iSLgcx7kWAU3Q2kjsMKiQB8yxSmhzar6JFbZYAxHCzKoZiamB22eD0i310VJWBDTJsbbQEUE2otZHUvosXymkd7Lww7CMqvWWw3Z5IEaWEEY7ZLva9wI5y7e829Sm0dqK1gYaB2v5ALgCWwBwBbYA4ApsAcCVY2yZpQ9n59dfvv7odTo7v56lDzSu27v7i8ur5Nt3pMGmi8ur27t7n7b8/P3nZv3Z0L/VaI2b9eds/krjenp+3byJ0NcFQrJ5E4vl2rMtoYPyg2lL6CsC4YEtdmALMIEtdmALMGnWlsVkJNevx9MwER5HpS3TsRJNvjsdM53xVGkCxkaTBf0VmakdB92kQVsWkxHpBdNxr4Q5whb77mIyKlNhMRnlZ07H8KUPNGdLRTfpAS3ZcsjSqgDdpDFb+i1LK7YUeZClHwzUFmOGwRhj9ASftijzGJU8t8MtNSRqe8VAbdkbTaPlNvduyT8GZB8A8qzON9ZgqO4Vg563lDXKvsYWNTQ9UNeRGM3pQWMNhopeMfRvYtZG2dettyhC6JMO53lL8SWs+DoGukBZr8B6i5261UkSmS6D+yyfLNH0q3WGCtby7WAtH5jAFjuwBZjAFjuwBZjAFjuwBZjAFjuwBZj4twV/OwlOEv9/O/n48vHr6e8JpMeXDxrXdvv+vPlAGnjabt992gLAMIEtALhisWW328lDAADJfLna7XbZNpNHM2GQkJBokqoIIf4B81Wnh7Z+bh8AAAAASUVORK5CYII=" alt="" />

此时, 如果运行代码格式为UTF-8的lua代码, 则可以正确输出中文, 如果保存为ANSI格式的话, 则会输出乱码.

不过具体导致这个结果的原因, 可能就需要去瞅下lua的代码了.

lua中的中文乱码的更多相关文章

  1. MAC下 mysql不能插入中文和中文乱码的问题总结

    MAC下 mysql不能插入中文和中文乱码的问题总结 前言 本文中所提到的问题解决方案,都是基于mac环境下的,但其他环境,比如windows应该也适用. 问题描述 本文解决下边两个问题: 往mysq ...

  2. 分布式监控系统Zabbix-3.0.3-完整安装记录(4)-解决zabbix监控图中出现中文乱码问题

    之前部署了Zabbix-3.0.3监控系统,在安装数据库时已经将zabbix库设置了utf-8字符. 首先确定zabbix开启了中文支持功能:登录到zabbix服务器的数据目录下(前面部署的zabbi ...

  3. zabbix解决监控图中出现中文乱码问题

    首先确定zabbix开启了中文支持功能:登录到zabbix服务器的数据目录下(前面部署的zabbix数据目录是/data/www/zabbix),打开 locales.inc.php文件[root@Z ...

  4. Java Web 开发中的中文乱码与解决方式

    乱码产生的原因 不管是request乱码还是response乱码,其实都是由于客户端(浏览器)跟服务器端采用的编码格式不一致造成的.以request乱码为例:浏览器向服务器发送请求,因为浏览器与服务器 ...

  5. jquery.ajax的url中传递中文乱码问题的解决方法

    jquery.ajax的url中传递中文乱码问题的解决方法   JQuery JQuery默认的contentType:application/x-www-form-urlencoded 这才是JQu ...

  6. 解决loadrunner 脚本和replaylog中的中文乱码问题

    解决loadrunner 脚本和replaylog中的中文乱码问题 解决这个问题必须认识到一个事实就是,loadrunner和测试服务器交换数据使用的是utf8格式,但是展现在replaylog中是使 ...

  7. 解决URL地址中的中文乱码问题的办法

    解决URL地址中的中文乱码问题的办法 引言: 在Restful类的服务设计中,经常会碰到需要在URL地址中使用中文作为的参数的情况,这种情况下,一般都需要正确的设置和编码中文字符信息.乱码问题就此产生 ...

  8. Jsp页面中的中文乱码问题解决

    Jsp页面中的中文乱码问题解决 在编写Jsp页面的时候,发现写入其中的中文在浏览器浏览的时候会出现乱码的情况. 出现乱码的原因分析: 因为页面中对自己的编码格式的声明和页面的实际编码格式不相同,而浏览 ...

  9. jmeter3.0_bodydata中存在中文乱码

    jmeter3.0_bodydata中存在中文乱码 1.进入jmeter.properties配置文件 找到#jsyntaxtextarea.font.family=Hack ,并将“#”取消并重启j ...

随机推荐

  1. js 闭包 理解

    1.什么是闭包 定义:是指有权访问另一个函数作用域中的变量的函数 创建闭包:在一个函数内部创建另一个函数 基本特点 在返回的匿名函数中 可以调用外部函数的变量 如下例中所示 内部函数(匿名函数) 可以 ...

  2. [NHibernate]多对多关系(关联查询)

    目录 写在前面 文档与系列文章 多对多关系关联查询 总结 写在前面 上篇文章介绍了nhibernate中对一对多关系进行关联查询的几种方式,以及在使用过程需要注意的问题.这篇文章对多对多关系的查询处理 ...

  3. MVVM开发模式简单实例MVVM Demo

    本文主要是翻译Rachel Lim的一篇有关MVVM模式介绍的博文 A Simple MVVM Example 并具体给出了一个简单的Demo(原文是以WPF开发的,对于我自己添加或修改的一部分会用红 ...

  4. LOL 控制技能的解释

    压制:硬控的一种,是指A在释放压制型技能的时候B无法进行任何动作,可以被 水银腰带 和 坩埚盖 解除(原来可以完全解掉,现在貌似只是能动,伤害还在继续,比如蚱蜢的R中,用水银解掉之后可以立即跑开,但是 ...

  5. 《征服 C 指针》摘录4:函数 与 指针

    一.指向函数的指针 函数名可以在表达式中被解读成“指向函数的指针”,因此,正如代码清单 2-2 的实验那样,写成 func 就可以取得指向函数的指针. “指向函数的指针”本质上也是指针(地址),所以可 ...

  6. 什么叫哈希表(Hash Table)

    散列表(也叫哈希表),是根据关键码值直接进行访问的数据结构,也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度.这个映射函数叫做散列函数,存放记录的数组叫做散列表. - 数据结构 ...

  7. 利用 PhpStorm、Idea 等 IDE 如何 运行/调试 Go 程序 ?

    以自己常用的 PhpStorm 为例 第一步:下载安装 Go插件 File -> Settings -> Plugins -> 输入关键字:Go 第二步:新建 Go项目 File - ...

  8. CPU思考

    线程高并发 会导致CPU load长,线程大运算量和大量线程 会导致CPU利用率高 因为CPU处理都是原子操作的,8核CPU在同一时刻最多也只能处理8个线程,但是因为处理的非常快,所以即使几万个简单线 ...

  9. 如何查找本地的ip

    输入cmd调出指令框然后输入ipconfig指令用快捷键ctrl右侧的键+R

  10. java3

    1:在定义Long或者Float类型变量的时候,要加L或者f. 整数默认是int类型,浮点数默认是double. byte,short在定义的时候,他们接收的其实是一个int类型的值. 这个是自己做了 ...