一、准备一份csv文件

ID,Name,Des,Model
ID,名字,描写叙述,图片模型
1,广告,www.benmutou.com,csv.png
2,否认,呵呵,广告什么的,我才不会加,good.png

二、字符串切割函数


function split(str, reps)
local resultStrsList = {};
string.gsub(str, '[^' .. reps ..']+', function(w) table.insert(resultStrsList, w) end );
return resultStrsList;
end

三、解析csv函数

function loadCsvFile(filePath)
-- 读取文件
local data = cc.FileUtils:getInstance():getStringFromFile(filePath); -- 按行划分
local lineStr = split(data, '\n\r'); --[[
从第3行開始保存(第一行是标题,第二行是凝视,后面的行才是内容) 用二维数组保存:arr[ID][属性标题字符串]
]]
local titles = split(lineStr[1], ",");
local ID = 1;
local arrs = {};
for i = 3, #lineStr, 1 do
-- 一行中,每一列的内容
local content = split(lineStr[i], ","); -- 以标题作为索引,保存每一列的内容,取值的时候这样取:arrs[1].Title
arrs[ID] = {};
for j = 1, #titles, 1 do
arrs[ID][titles[j]] = content[j];
end ID = ID + 1;
end return arrs;
end

这里把解析出来的数据存储在数组中了

四、測试代码

local function main()
local csvConfig = loadCsvFile("res/Mutou.Csv"); print(csvConfig[1].Name .. ":" .. csvConfig[1].Des);
print(csvConfig[2].Name .. ":" .. csvConfig[2].Des);
end

这样就能把csv文件的第一、二行的描写叙述输出来。

是不是比c++简单多了。好了,就到这里!

cocos2d-x(quick-lua)读取csv文件的更多相关文章

  1. Lua读取CSV文件到table中

    创建Lua函数载入CSV文件并保存到表中的函数: function GetLines(fileName) indx = 0 myLines ={} for line in io.line(string ...

  2. Cocos2d-x Lua 阅读Csv文件,使用数据更方便

    在我的书或出售之前,我的源代码,有Csvshadow文件. 也许这是偏见.我与工作将是最长的轮廓Csv,所以,我会帮助不大喜欢它的游戏. Csv文件,非常格式easy,也就是说,一个数据线,字段之间用 ...

  3. sparkR读取csv文件

    sparkR读取csv文件 The general method for creating SparkDataFrames from data sources is read.df. This met ...

  4. VB6.0 读取CSV文件

    最近做了一个Upload文件的需求,文件的格式为CSV,读取文件的方法整理了一下,如下: 1.先写了一个读取CSV文件的Function: '读取CSV文件 '假设传入的参数strFile=C:\Do ...

  5. php读取csv文件,在linux上出现中文读取不到的情况 解决方法

    今,php读取csv文件,在linux上出现中文读取不到的情况,google,后找到解决办法<?phpsetlocale(LC_ALL, 'zh_CN');$row = 1;$handle = ...

  6. 使用univocity-parsers创建和读取csv文件

    import com.univocity.parsers.csv.CsvFormat;import com.univocity.parsers.csv.CsvParser;import com.uni ...

  7. Python 读取csv文件到excel

    朋友问我如何通过python把csv格式的文件另存为xls文件,自己想了想通过读取csv文件然后再保存到xls文件中即可,也许还有其他简单的方法,但这里也为了练习python语法及其他知识,所以采用了 ...

  8. 转换成CSV文件、Word、Excel、PDF等的方法--读取CSV文件的方法

    1. 转换成CSV文件: http://www.dotnetgallery.com/lab/resource93-Export-to-CSV-file-from-Data-Table-in-Aspne ...

  9. java读取CSV文件添加到sqlserver数据库

    在直接将CSV文件导入sqlserver数据库时出现了错误,原因还未找到,初步怀疑是数据中含有特殊字符.于是只能用代码导数据了. java读取CSV文件的代码如下: package experimen ...

  10. C#:StreamReader读取.CSV文件(转换成DataTable)

    using System.Data; using System.IO; /// <summary> /// Stream读取.csv文件 /// </summary> /// ...

随机推荐

  1. XCode中在提示窗体中对已弃用的API接口画上红线

    当我们在XCode中写程序时会不断的出现相关API提示窗体,那敲起来是一个爽啊. 有时候会看到一些API已经弃用了被画上红色的横线.说明该接口已经被弃用,仍保留,但不建议使用,对弃用API实现画横线事 ...

  2. vue 单页面应用实战

    1. 为什么要 SPA? SPA: 就是俗称的单页应用(Single Page Web Application). 在移动端,特别是 hybrid 方式的H5应用中,性能问题一直是痛点. 使用 SPA ...

  3. SQL Server -SET ANSI_NULLS

    当ANSI_NULLS 为ON时,遵循SQL92的标准,只能使用IS NULL 来判断值是否为NULL, 而不能使用=或<>来与NULL做比较,任何值包括NULL值与NULL值做=或< ...

  4. UNION 和UNION ALL

    UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列 ...

  5. xcode 7 添加空模板

    文件下载链接: http://pan.baidu.com/s/1pKbyf4R 密码: ppi7 下载完成后将模板放入以下路径应用程序->Xcode->右键显示包内容->/Conte ...

  6. 关于css的优先级

    样式的优先级 外部样式 < 内部样式 < 内联样式 选择器的优先权 解释: 1.  内联样式表的权值最高 1000: 2.  ID 选择器的权值为 100; 3.  Class 类选择器的 ...

  7. pom.xml配置

    1:头部引用 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3 ...

  8. WPF/MVVM 快速开发

    http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial 这篇文章醍醐灌顶,入门良药啊! Introductio ...

  9. PHP ReflectionClass

    <?php /** * @desc test reflectionclass * @author songweiqing * @create_time 2015-01-7 * */ class ...

  10. linux下tar用法

    以下是linux下tar的用法,转一下,以便方便自己看(这里没把rar,zip类的转过来,一般rar,zip在linux下基本没人用,基本上是zip,unzip,rar,unrar,这些命令,并且ra ...