应用场景

网站配置的导入与导出。当一个网站在测试服开发完成后上线到正式服,为了避免重复配置数据,采取代码的方式来减少一些不必要的人工操作。
后台接口接收的是 json 格式而不是文件格式的时候,前端可以采用文件的形式来保存这些数据,在导入导出的时候做一下文件与数据之间的转换。

  • 导出 —— 数据写入文件保存
  • 导入 —— 文件上传,然后读取数据

代码实现

首先需要一个 上传文件的 input 框 和 两个按钮

<body><input type="file" accept=".json" id="file"><button id="read">读取</button><button id="write">写入</button>
</body>
<script>const file = document.getElementById('file');const readBtn = document.getElementById('read');const writeBtn = document.getElementById('write');
</script>

导入:将上传的 .json 文件中的内容读取出来,请求接口,将数据传给后台

readBtn.onclick = function () {const fileList = file.files;if (!fileList.length) {return;}const reader = new FileReader();reader.readAsText(fileList[0], "UTF-8");reader.onload = function (event) {console.log(event.target.result);}
};

导出:请求接口,将获取到的数据序列化,然后写入到 json 文件中

writeBtn.onclick = function () {// 字符内容转变成blob地址const content = JSON.stringify([{ name: '张三' }]);const blob = new Blob([content]);// 创建一个 a 标签,添加属性let eleLink = document.createElement('a');eleLink.download = "1.json";eleLink.style.display = 'none';eleLink.href = URL.createObjectURL(blob);// 触发点击,然后移除document.body.appendChild(eleLink);eleLink.click();document.body.removeChild(eleLink);
};

JavaScript — json文件的读取与写入相关推荐

  1. json文件的读取与写入

    1. 用json读取字符串文件 import json # 读取数据,我们的数据为json格式的str='''[{"name":"kingsan"," ...

  2. C++:从json文件中读取参数/创建文件夹/位拼接

    目录 1.从json文件中读取参数 2.创建文件夹 3.位运算拼接 1.从json文件中读取参数 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml ...

  3. python对文件的读操作有哪些方法-Python中文件的读取和写入操作

    从文件中读取数据 读取整个文件 这里假设在当前目录下有一个文件名为'pi_digits.txt'的文本文件,里面的数据如下: 3.1415926535 8979323846 2643383279 wi ...

  4. python对文件的读操作方法有哪些-Python中文件的读取和写入操作

    从文件中读取数据 读取整个文件 这里假设在当前目录下有一个文件名为'pi_digits.txt'的文本文件,里面的数据如下: 3.1415926535 8979323846 2643383279 wi ...

  5. c# gerber文件读取_懒猪编程实例六:Visual C# 实现外部文件的读取和写入

    在Visual C#的环境下,用户在打开外部文件时,有时需要读取外部文件信息中的内容,有时也需要将特定的信息内容写入到外部文件当中,那么如何来实现这些功能呢?下面我们来看一下外部文件的读取和写入方法的 ...

  6. C语言中文件的读取和写入

    C语言中文件的读取和写入 注意: 1.由于C是缓冲写 所以要在关闭或刷新后才能看到文件内容 2.电脑处理文本型和二进制型的不同 (因为电脑只认识二进制格式) 在C语言中写文件 //获取文件指针 FIL ...

  7. 使用Python对Dicom文件进行读取与写入的实现(pydicom 和 SimpleITK)

    这篇文章主要介绍了使用Python对Dicom文件进行读取与写入的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 使用Pyd ...

  8. Qt5笔记之Qt5插件的生成与加载及json文件的读取

    一.前言 1. Qt Plugin按照应用场景分两种类型: (1)The High-Level API:用于扩展Qt本身的功能,需放在Qt安装目录下的指定目录里: (2)The Lower-Level ...

  9. Python创建txt文件并读取与写入

    Python创建txt文件并读取与写入 [PyCharm 软件内操作] 在PyCharm中创建工作目录(D:\python\test1\) 一.创建一个txt文档 # -*- coding: utf- ...

  10. C#实现excel文件的读取、写入以及异常处理,附源码程序

    C#实现excel文件的读取与写入,附源码程序 说明 关键代码段 源程序下载地址 注意事项及异常解决 说明 通过OleDB方式,对execl文件进行读取.写入操作. 注:网上很多类似的代码,但是代码中 ...

最新文章

  1. ffmpeg 怎么处理udp音频_STREAM: srs 2.0release,ffmpeg实时转码udp流,出现只有音频没有视频的问题?...
  2. 使用php与mysql构建我们的网站
  3. python爬取知乎live_python爬虫——xml数据爬取
  4. 【转】sharepoint foundation 2013升级sp1补丁后无法使用搜索功能
  5. 离线处理需要做哪些工作_游戏配音需要做哪些工作?
  6. nginx ---- 静态资源部署
  7. 阿里官宣AI框架大牛贾扬清加盟,任职技术VP
  8. android二级菜单ui,巧用PopupMenu实现NavigationView的二级子菜单
  9. VScode编写Python快捷键,建议收藏
  10. 关于input在苹果和安卓手机上调用相机和相册的问题
  11. 个人笔记,深入理解 JVM,很全!
  12. Shopify开店建站营销推广卖家平台后台中文指南 – Test orders / 测试订单
  13. 车联网的数据安全该怎么保护
  14. 屏蔽百度百科小视频的插件
  15. UI设计素材干货,动效的优秀模板
  16. java太臃肿_Java简洁开发技巧,减少繁琐臃肿的代码
  17. 消除canvas闪烁
  18. redis watchdog_Redis分布式事务框架Redisson源码解析(一)
  19. Spring - 什么是spring?
  20. 想象中的在家办公 vs 真实的在家办公

热门文章

  1. 移动通信原理学习笔记之二—— 移动通信中的调制解调技术
  2. python酒店评论分析_酒店评论的情感分析
  3. pchunter驱动加载失败_电脑开机显示自动修复失败无法进入系统,解决方法
  4. html幻灯片滚动效果,jQuery实现全屏幻灯片的滚动页面效果
  5. 详解修改BXP服务器IP地址的方法(转)
  6. Jersey框架:深入研究的终极大招-Jersey用户手册
  7. 计算机语言编程入门基础
  8. 微pe Linux,微PE工具箱:最好用的WinPE装机维护工具!纯洁无推广无广告
  9. 2020年大数据营销案例_大数据营销案例分析
  10. 「数据新星」Databricks 崛起启示录