当前位置: 首页 > news >正文

做茶网站免费域名注册永久

做茶网站,免费域名注册永久,番禺电商网站建设,厦门市市场开发建设服务中心网站哈喽,大家好,我是灰小猿,一个超会写bug的程序猿! 今天来记录一个在项目实战中比较实用的方法,主要是针对一些需要存在简单数据文件导入导出的场景,如:数据文件的简单备份、软件升版前后配置导入…

哈喽,大家好,我是灰小猿,一个超会写bug的程序猿!

今天来记录一个在项目实战中比较实用的方法,主要是针对一些需要存在简单数据文件导入导出的场景,如:数据文件的简单备份、软件升版前后配置导入导出等场景

这个方法可以作为一个工具类来使用,可以将想要导出成文件的数据通过导出方法直接导出为json或ini文件,也可以将导出的文件直接通过导入方法进行解析,返回原先的数据模型。

以导出用户数据为例:

数据模型如下:

import lombok.Data;
import lombok.ToString;@Data
@ToString
public class User {private String address;private String tel;private int number;private boolean can;
}

首先通过导出方法,将数据导出为json或ini文件:

    /*** 导出json文件*/public static void exportJsonFile(String jsonData, String exportPath) {// 生成json格式文件try {// 保证创建一个新文件File file = new File(exportPath);if (!file.getParentFile().exists()) {file.getParentFile().mkdirs();}if (file.exists()) {file.delete();}file.createNewFile();// 将格式化后的字符串写入文件Writer write = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");write.write(jsonData);write.flush();write.close();} catch (Exception e) {e.printStackTrace();}}

之后如果需要再次将导出的数据导入到软件,只需要导入该文件,下述方法将会自动解析文件并将数据返回出去:

     /*** 导入json文件*/public static Object importJsonFile(String importFilePath) {File file = new File(importFilePath);int ch;String jsonStr = "";try (Reader reader = new InputStreamReader(new FileInputStream(file), "Utf-8");) {StringBuffer sb = new StringBuffer();while ((ch = reader.read()) != -1) {sb.append((char) ch);}jsonStr = sb.toString();System.out.println(JSON.parseObject(jsonStr));} catch (Exception e) {e.printStackTrace();}return JSON.parseObject(jsonStr);}

在实际使用中的调用方法如下:

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.hirain.model.User;
import lombok.extern.slf4j.Slf4j;import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;@Slf4j
public class JsonFileUtils {public static void main(String[] args) {Map<String, Object> jsonMap = new HashMap<>();jsonMap.put("name", "name1");jsonMap.put("age", 20);jsonMap.put("sex", true);User user = new User();user.setAddress("深圳");user.setCan(true);user.setTel("123456");user.setNumber(110);User user2 = new User();user2.setAddress("广州");user2.setCan(false);user2.setTel("888888");user2.setNumber(666);List<User> users = new ArrayList<>();users.add(user);users.add(user2);jsonMap.put("userInfo", users);String jsonData = JSON.toJSONString(jsonMap);//文件输出路径String exportFilePath = "D:\\下载\\testjson.json";exportJsonFile(jsonData, exportFilePath);log.info("导出成功");//解析文件实现导入Map<String, Object> jsonMap2 = (Map<String, Object>) importJsonFile(exportFilePath);System.out.println(jsonMap2.toString());Object userInfo =  jsonMap2.get("userInfo");List<User> userJsonList = JSONObject.parseArray(userInfo.toString(), User.class);System.out.println(userJsonList.toString());log.info("导入成功");}}

上面的方法是以导出json文件为例,如果想要导出ini文件,只需要将文件的后缀名修改一下即可。

在上述方法中,保存到文本的数据是一个map集合,其中存放了多种类型的数据,包括基本的数据类型,以及复杂的对象集合,解析文件之后可以正常拿到这个map集合,并且通过key可以拿到对应的value,

以上就是本期工具类的分享,我们下期见!

http://www.15wanjia.com/news/25802.html

相关文章:

  • 哈尔滨做网站的价格百度seo排名优化
  • 厦门 网站制作体育新闻最新消息
  • 网站建设费用常州网络推广哪家好
  • 网站互点可以自己点么seo优化是怎么优化的
  • 请问我做吉利网站吉利啊邵阳疫情最新消息
  • 网站二级域名设置东莞seo网络优化
  • 仿一个网站要多少钱seo外链怎么做能看到效果
  • 嘉善做网站深圳将进一步优化防控措施
  • 什么网站做一件代发网络推广方法怎么做
  • 枣庄做网站视频号直播推广二维码
  • 网站素材 按钮杭州小周seo
  • 淘宝的网站建设怎么建福清seo
  • ERP开发 网站开发百度推广助手官方下载
  • 网站未备案怎么做淘宝客广州seo托管
  • 装修设计公司logo东莞seo建站公司哪家好
  • 专门做孩子早教的网站东莞seo网络公司
  • 做代金券的网站让顾客心动的句子
  • 河北网站制作报价腾讯广告推广平台
  • 重庆市建设工程管理协会网站网域名查询地址
  • 昆明模板建站定制网站seo网络营销推广
  • 必应网站建设做公司网站需要多少钱
  • 常德网站公司全网营销整合推广
  • 广州网站开发哪家强线上推广具体应该怎么做
  • 中国建设银行人力资源网站百度经验官网登录
  • 怎么做网站关键词数据分析方法
  • 做网页是什么专业江苏网站seo
  • 数商云电子商务网站建设上海空气中检测出病毒
  • 门户网站建设分工的通知河南网站推广公司
  • 政府网站建设发展规划公司网站搭建流程
  • 两学一做 网站网页设计可以自学吗