LitJson(读Exce文件写入到json文件):
读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文件):的更多相关文章
- Node.js读取某个目录下的所有文件夹名字并将其写入到json文件
针对解决的问题是,有些时候我们需要读取某个文件并将其写入到对应的json文件(xml文件也行,不过目前用json很多,json是主流). 源码如下:index.js var fs = require( ...
- node——将用户提交的数据写入data.json文件
前续 当我们在进行将数据提交到某个网页时,需要将提交数据保存下来 1.提交数据 2.获得数据 3.保存数据 先看提交数据: <!DOCTYPE html> <html lang=&q ...
- JsonResult序列化并保存json文件 以及对json文件读取反序列
项目中我们经常遇到一些经常访问的接口,并且更新及时度不是特别高,那么我们可以利用文件来做一些数据请求的缓存. 这里以微信公众号获取粉丝用户列表为例,我们把微信公众号查到的用户先缓存在文件中,这样在翻页 ...
- 字符串写入到json文件
背景: PHP产生公告 ,发送到CGI ,在CGI把该公告的json 字符串写入到文件内(转义后的字符串) 通过 jsoncpp 操作 int write_notice_to_json(string ...
- Angular 通过 $http.post 写入本地 JSON 文件
最近在练习使用 Angular,在实现 $http 对本地 JSON 文档读写的时候遇到了问题. 问题 使用 GET 方法成功将 JSON 文档的内容读出来:但是在使用 POST 插入本地 JSON ...
- Linux_脚本——使用echo从一个文件写入还有一个文件末尾
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/30980923 echo $(cat 你须要的文件) ...
- 如何将mongodb bson文件转成json文件
使用mongodb自带的命令 bsondump collection.bson > collection.json
- 【python】将json串写入文件,并以json格式读取出来
写json--json.dumps 代码: import json #要写入文件的json串(dict格式) result ={', 'https://appapi.xxxx.com/appapi/b ...
- nodejs写入json文件,格式化输出json的方法
假如我需要把data序列化成json字符串,然后写入data.json文件中,代码如下: let str = JSON.stringify(data) fs.writeFile('data.json' ...
随机推荐
- PL/SQL与SQL(Oracle)Case语句
(使用scott账户下的表) 1.Oracle SQL语句的case语句写法: --sql中的case用于分支判断并返回某个值. select empno , ename, deptno , case ...
- jmeter接口参数化获取tocken后保存批量保存在本地
jmeter目录结构如下: 1,读取文件配置的ID提取tocken 2,CSV 数据文件设置,第一个为文件目录,第二个为参数化的参数名. 3,正则表达式提取tocken 4,BeanShell Pos ...
- fopen_s()
原型:errno_t fopen_s( FILE** pFile, const char *filename, const char *mode ); 例子: char *filePath=&q ...
- Java基础之对包,类,方法,变量理解(灵感)
包,类,方法,变量 灵感乍现 感觉就如电脑上的各个大小文档一般,只不过名称不同,用法不同,功效不同,就好比你要调用网上的一个图片,这个图片可以是变量,可以是方法,可以是类.你要调用可以把他幻化成接口, ...
- hdu1402(大数a*b&fft模板)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1402 题意: 给出两个长度1e5以内的大数a, b, 输出 a * b. 思路: fft模板 详情参 ...
- 洛谷 P3806 【模板】点分治1
P3806 [模板]点分治1 题目背景 感谢hzwer的点分治互测. 题目描述 给定一棵有n个点的树 询问树上距离为k的点对是否存在. 输入输出格式 输入格式: n,m 接下来n-1条边a,b,c描述 ...
- Shell-4-让文本飞
1.正则表达式 ^ 行起始标志 $ 行尾标记 . 匹配任意一个字符 [ ] 匹配包含在[字符]之中的任意一个字符,coo[kl]匹配cook或cool [^] 匹配除[^字符]的任意一个字符 [-] ...
- POJ1847 Tram SPFA算法变形
原题地址:http://poj.org/problem?id=1847 Tram:有轨电车 这题就是构造一个有向无权图,然后每一个点都会有一个开关,这个开关指向他的其中一个出度.当途经这个点的时候,如 ...
- C++基础学习7:new/delete操作符
在C语言中,动态分配和释放内存的函数是malloc.calloc和free,而在C++语言中,new.new[].delete和delete[]操作符通常会被用来动态地分配内存和释放内存. 需要注意的 ...
- SprimgMVC学习笔记(一)—— SpringMVC入门
一.什么是 SpringMVC ? 在介绍什么是 SpringMVC 之前,我们先看看 Spring 的基本架构.如下图: 我们可以看到,在 Spring 的基本架构中,红色圈起来的 Spring W ...