unity C#将excel解析为json
本文将会使用到4个插件:Excel.dll , ICSharpCode.SharpZipLib.dll , SimpleJson.cs , System.Data.dll .
所有插件百度云连接:http://pan.baidu.com/s/1geK6SCV
参考连接:http://www.xuanyusong.com/archives/2429
http://www.cnblogs.com/singledigit/p/6237796.html
思路
目前只能读取两行数据,第一行为json中的key,第二行为json的value
1.利用Excel,获得excel表格中的数据。
2.获得数据的行数并依次读取并向json中添加结点。
如图所示:
第一个 | 第一个 |
---|---|
第二个 | 第二个 |
第三个 | 第三个 |
在解析之后输出:{“第一个”:”第一个”, “第二个”:”第二个”, “第三个”:”第三个”}
代码如下:
/// <summary>
/// 只读Excel方法
/// </summary>
public void GameReadExcel()
{
FileStream stream = File.Open(path, FileMode.Open, FileAccess.Read);
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
DataSet result = excelReader.AsDataSet();
int columns = result.Tables[0].Columns.Count;//获取列数
int rows = result.Tables[0].Rows.Count;//获取行数
JSONClass json = new JSONClass();
//从第1行开始读
for (int i = 0; i < rows; i++)
{
json.Add(result.Tables[0].Rows[i][0].ToString(), result.Tables[0].Rows[i][1].ToString());
}
Debug.Log(json);
}