Skip to content

JavsScript 实现文件的导入与导出

导入

ts
const handleIn = () => {
  // 1.点击导入
  const input = document.querySelector('.fileInput') as HTMLInputElement;
  input.click();

  input.onchange = () => {
    // 2.导入文件后,获取文件
    const file = input.files[0];

    // 3.读取文件内容
    const reader = new FileReader();
    reader.readAsText(file, 'utf-8');
    reader.onload = (res) => {
      const json = JSON.parse(res.target?.result as string);
    };
  };
};

导出

ts
const handleOut = () => {
  // 1.创建一个对象用于存储数据
  let obj = {};

  // 2.将对象转换为字符串形式
  const data = JSON.stringify(obj);

  // 3.将字符串转为二进制
  const blob = new Blob([data], { type: 'text/json' });

  // 4.创建一个a标签用于下载
  const link = document.createElement('a');

  // 5.设置文件的路径与名字
  link.href = window.URL.createObjectURL(blob);
  link.download = `H2记账.json`;

  // 6.添加a标签->点击->移除a标签
  document.body.appendChild(link);
  link.click();
  document.body.removeChild(link);
};

Last updated:

经典款
RackNerd

RackNerd

新手入门首选

洛杉矶 DC3 机房 | 3T 大流量

1C / 1GB / 20GB SSD / 3TB 流量

$21.99/年
欧洲优化
V.PS

V.PS

可选荷兰 / 德国

欧洲三网优化 | 电信 GIA + 联通 9929 + 移动 CMIN2

2C / 1GB / 20GB NVMe / 1TB 流量

€6.95/月
关注微信公众号
优化线路
Evoxt

Evoxt

最便宜的亚太优化线路

马来西亚 电信 GIA / 联通 9929
优惠码:AFF2377-DEV

1C / 512MB / 5GB SSD / 150GB 流量

$3.32/月
优化线路
搬瓦工

搬瓦工

15 个机房自由切换

洛杉矶 DC6 机房
电信 / 联通 GIA + 移动 CMIN2

2C / 2GB / 40GB SSD / 2.5TB 流量

$49.99/季