lua -- encode and decode

json.encode

将表格数据编码为 JSON 字符串。

格式:

jsonString = json.encode(表格对象)
用法示例:

local str = json.encode({a=1,b="ss",c={c1=1,c2=2},d={10,11},100})
echo(str) -- {"a":1,"b":"ss","c":{"c1":1,"c2":2},"d":[10,11],"1":100}
local str = json.encode({1,2,"3",{10,11}})
echo(str) -- [1,2,"3",[10,11]]
Note: table作为字典使用时,整型键值将被转换为字符串键值

local str = json.encode({a=1,[5]=3})
echo(str) -- {"a":1,"5":3}
Note: table所有键值为整型时,会当作数组看待,空位将转化为null

local str = json.encode({[3]=2,[5]=3})
echo(str) -- [null,null,2,null,3]
~~

json.decode

将 JSON 字符串解码为表格对象。

格式:

table = json.decode(string)
用法示例:

local json = require("framework.shared.json")
local tb = json.decode(‘{"a":1,"b":"ss","c":{"c1":1,"c2":2},"d":[10,11],"1":100}‘)
dump(tb) --[[
- "<var>" = {
-     "1" = 100
-     "a" = 1
-     "b" = "ss"
-     "c" = {
-         "c1" = 1
-         "c2" = 2
-     }
-     "d" = {
-         1 = 10
-         2 = 11
-     }
- }
]]
local tb = json.decode(‘[1,2,"3",[10,11]]‘)
dump(tb) --[[
- "<var>" = {
-     1 = 1
-     2 = 2
-     3 = "3"
-     4 = {
-         1 = 10
-         2 = 11
-     }
- }
]]
时间: 2024-10-24 14:14:57

lua -- encode and decode的相关文章

Python之encode与decode浅析

 Python之encode与decode浅析 在 python 源代码文件中,如果你有用到非ASCII字符,则需要在文件头部进行字符编码的声明,声明如下: # code: UTF-8 因为python 只检查 #.coding 和编码字符串,为了美观等原因可以如下写法: #-*-coding:utf-8-*- 常见编码介绍: GB2312编码:适用于汉字处理.汉字通信等系统之间的信息交换. GBK编码:是汉字编码标准之一,是在 GB2312-80 标准基础上的内码扩展规范,使用了双字节编码.

JAVA 字符串题目 以静态方法实现encode()和decode()的调用

题目: 用java语言实现两个函数encode()和decode(),分别实现对字符串的变换和复原.变换函数encode()顺序考察已知字符串的字符,按以下规则逐组生成新字符串: (1)若已知字符串的当前字符不是大于0的数字字符,则复制该字符于新字符串中: (2)若已知字符串的当前字符是一个数字字符,且它之后没有后继字符,则简单地将它复制到新字符串中: (3)若已知字符串的当前字符是一个大于0的数字字符,并且还有后继字符,设该数字字符的面值为n,则将它的后继字符(包括后继字符是一个数字字符)重复

java Base64 [ Encode And Decode In Base64 Using Java ]

http://www.javatips.net/blog/2011/08/how-to-encode-and-decode-in-base64-using-java http://commons.apache.org/proper/commons-codec/ 官方下载链接 Encode And Decode In Base64 Using Java explains about different techniques for Encode Base64 using java / Decode

[LeetCode] Encode and Decode TinyURL 编码和解码小URL地址

Note: This is a companion problem to the System Design problem: Design TinyURL. TinyURL is a URL shortening service where you enter a URL such as https://leetcode.com/problems/design-tinyurl and it returns a short URL such as http://tinyurl.com/4e9iA

Python encode和decode

最近对于Python2和Python3的编码和解码比较困惑,在知乎上面咨询了依云大神后对Python的编码和解码逐渐清晰起来, 在此把个人理解结合大神的指点分享一下,如下内容仅代表个人观点,不排除有错误! 首先需要明白encode == 编码,decode == 解码,encode就是把逻辑上的字符变成二进制数据,以便存储和传输. (至于编码前和解码后的字符是怎么存储的,是Python的内部实现,只有 Python 自己需要操心,你不用管; 就像你不用管整数在 Python 内存里长什么样一样,

Python 字符串的encode与decode

python的str,unicode对象的encode和decode方法 python中的str对象其实就是"8-bit string" ,字节字符串,本质上类似java中的byte[]. 而python中的unicode对象应该才是等同于java中的String对象,或本质上是java的char[]. 对于 s="你好" u=u"你好" 1. s.decode方法和u.encode方法是最常用的, 简单说来就是,python内部表示字符串用un

271. Encode and Decode Strings

/* * 271. Encode and Decode Strings * 2016-6-25 by Mingyang * 这道题很酷的地方就是选择一种存储方式可以有效地存储string,我一开始就想到了存长度加string的方法 * 这个题用了一个indexof的API, * public int indexOf(String str,int fromIndex) * Returns the index within this string of the first occurrence of

encode和decode

Python字符串的encode与decode研究心得乱码问题解决方法 为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题. 字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从uni

LeetCode 解题思路:535.Encode and Decode TinyURL

TinyURL is a URL shortening service where you enter a URL such as https://leetcode.com/problems/design-tinyurl and it returns a short URL such as http://tinyurl.com/4e9iAk. Design the encode and decode methods for the TinyURL service. There is no res