读Exce文件写入到json文件汇总:

//命名空间

using System.Collections;

using System.Collections.Generic;

using System.IO;

using UnityEngine;

using  UnityEditor;

using  Excel;

using  LitJson;

using  OfficeOpenXml;

public class ExcelData     //定义ExcelData类

{

//定义表格的内容变量名称

public string UserName;

public string UserPwd;

}

//定义unity中窗口类

public class XiaoLang : EditorWindow

{

public XiaoLang()

{

//设置窗口的名字

this.titleContent = new GUIContent("测试窗口");

}

//扩展编译器

[MenuItem("MyTools/windows")]

static void MyWindows()

{

//固定套路格式

GetWindow(typeof(XiaoLang));

}

void OnGUI()

{

//定义窗口点击

if (GUILayout.Button("读取Excel至json文件", GUILayout.Width(200)))

{

//点击调用的方法

WriteExcelDataToJson();

}

}

//WriteExcelDataToJson方法

private void WriteExcelDataToJson()

{

//定义excel、Json文件路径

string excelPath = Application.streamingAssetsPath + "/userInfo.xlsx";

string JsonPath = Application.streamingAssetsPath + "/userInfo.json";

//定义数据存储的List

List<ExcelData> data = new List<ExcelData>();

//固定读写格式

ReadExcelData(data,excelPath);

WriteDataToJson(data, JsonPath);

AssetDatabase.Refresh();

}

//ReadExcelData方法、参数List、参数路径

private void ReadExcelData(List<ExcelData> data, string excelPath)

{

//定义读取信息

FileInfo info = new FileInfo(excelPath);

if (info.Exists == false)

{

Debug.Log("Excel文件不存在.");

return;

}

//固定读取数据流

FileStream stream = new FileStream(excelPath,FileMode.Open,FileAccess.Read);

IExcelDataReader reader = ExcelReaderFactory.CreateOpenXmlReader(stream);

//读取文件首行

reader.Read();

//读取文件首行

while (reader.Read())

{

//读取文件格式并添加到List中

ExcelData exceldata = new ExcelData();

exceldata.UserName = reader.GetString(0);

exceldata.UserPwd = reader.GetString(1);

data.Add(exceldata);

}

}

//WriteDataToJson方法、参数List、参数路径

private void WriteDataToJson(List<ExcelData> data, string jsonPath)

{

//固定写Json文件格式

string jsonData = JsonMapper.ToJson(data);

File.WriteAllText(jsonPath,jsonData);

}

}

注:代码使用LitJson插件完成、其方法基于LitJson代码、用于Excel文件与Json文件之间的转换、原理雷同

LitJson(读Exce文件写入到json文件):的更多相关文章

  1. Node.js读取某个目录下的所有文件夹名字并将其写入到json文件

    针对解决的问题是,有些时候我们需要读取某个文件并将其写入到对应的json文件(xml文件也行,不过目前用json很多,json是主流). 源码如下:index.js var fs = require( ...

  2. node——将用户提交的数据写入data.json文件

    前续 当我们在进行将数据提交到某个网页时,需要将提交数据保存下来 1.提交数据 2.获得数据 3.保存数据 先看提交数据: <!DOCTYPE html> <html lang=&q ...

  3. JsonResult序列化并保存json文件 以及对json文件读取反序列

    项目中我们经常遇到一些经常访问的接口,并且更新及时度不是特别高,那么我们可以利用文件来做一些数据请求的缓存. 这里以微信公众号获取粉丝用户列表为例,我们把微信公众号查到的用户先缓存在文件中,这样在翻页 ...

  4. 字符串写入到json文件

    背景: PHP产生公告 ,发送到CGI ,在CGI把该公告的json 字符串写入到文件内(转义后的字符串) 通过 jsoncpp 操作 int write_notice_to_json(string ...

  5. Angular 通过 $http.post 写入本地 JSON 文件

    最近在练习使用 Angular,在实现 $http 对本地 JSON 文档读写的时候遇到了问题. 问题 使用 GET 方法成功将 JSON 文档的内容读出来:但是在使用 POST 插入本地 JSON ...

  6. Linux_脚本——使用echo从一个文件写入还有一个文件末尾

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/30980923 echo $(cat 你须要的文件) ...

  7. 如何将mongodb bson文件转成json文件

    使用mongodb自带的命令 bsondump collection.bson > collection.json

  8. 【python】将json串写入文件,并以json格式读取出来

    写json--json.dumps 代码: import json #要写入文件的json串(dict格式) result ={', 'https://appapi.xxxx.com/appapi/b ...

  9. nodejs写入json文件,格式化输出json的方法

    假如我需要把data序列化成json字符串,然后写入data.json文件中,代码如下: let str = JSON.stringify(data) fs.writeFile('data.json' ...

随机推荐

  1. wordcount程序实现与测试

    GitHub地址 https://github.com/jiaxuansun/wordcount PSP表格 PSP PSP阶段 预估耗时(分钟) 实际耗时(分钟) Planning 计划 10 5 ...

  2. 转换流 Properties集合 序列化 工具

    今日内容介绍1.转换流2.缓冲流3.Properties集合4.序列化流与反序列化流5.commons-IO============================================== ...

  3. vs2010 怎样设置文本编辑窗口和解决方案资源管理器同步?

    即切换左边的文本编辑窗口,解决方案资源管理器如何定位到相应的文件项上?答案: 工具--选项--项目和解决方案--常规--在解决方案资源管理器中跟踪活动项(前打勾)确定 应该就可以了.

  4. Altium Designer 3D模型的下载与添加

    先 先晒几个图:是不是很逼真啊..  ---------------------------------------教程---------------------------------------- ...

  5. gRPC官方文档(通讯协议)

    文章来自gRPC 官方文档中文版 HTTP2 协议上的 gRPC 本文档作为 gRPC 在 HTTP2 草案17框架上的实现的详细描述,假设你已经熟悉 HTTP2 的规范.产品规则采用的是ABNF 语 ...

  6. html中img标签的url如何拼接变量

    <img id="pic" /> <script type="text/javascript"> var url = "xxx ...

  7. window安装配置 zookeeper 单机模式

    1.zookeeper简单介绍 zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,我所了解到的主要的使用场景有两个 (1).微服务注册中心(Dubbo较常用Zookeeper做注册中 ...

  8. Boost lockfree deque 生产者与消费者多对多线程应用

    boost库中有一个boost::lockfree::queue类型的 队列,对于一般的需要队列的程序,其效率都算不错的了,下面使用一个用例来说明. 程序是一个典型的生产者与消费者的关系,都可以使用多 ...

  9. java web 简单的权限管理

    spring ,springMvc ,mybatis 简单权限管理 其实只需要3张表..admin_group  ,function,group 表

  10. Oracle外连接与条件的组合

    由于很少使用SQL 92语法,今天写个outer join的时候被搞晕了.参考了一些例子后整理如下.总结,"inter join on"中的条件是对table进行joining的r ...