zoukankan      html  css  js  c++  java
  • 读取CSV文件

    package com.csv;
    
    import java.io.BufferedReader;
    import java.io.FileInputStream;
    import java.io.InputStreamReader;
    import java.util.List;
    
    import org.apache.commons.collections4.CollectionUtils;
    import org.apache.commons.compress.utils.Lists;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.http.HttpHeaders;
    import org.springframework.http.MediaType;
    import org.springframework.web.client.RestTemplate;
    
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    /**
     * 
     * @Description 读取文件
     * @Author wangymd
     * @Date 2021-11-23 10:46:07
     */
    public class ReadCSVFile {
    
        @Autowired
        private static RestTemplate restTemplate;
    
        public static void main(String[] args) {
            String fileName = "D:\\dev\\tempFile\\143_20211119102853.csv";
            //读取excel
            List<JSONObject> buildCsv = buildCsv(fileName);
                   
            if(CollectionUtils.isNotEmpty(buildCsv)) {
                for (JSONObject json : buildCsv) {
                    invokeHttp(json);
                }
            }
        }
        
        public static List<JSONObject> buildCsv(String fileName) {
            try {
                //BufferedReader reader = new BufferedReader(new FileReader("D:\\dev\\tempFile\\143_20211119102853.csv"));//换成你的文件名
                BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(fileName),"GBK"));//换成你的文件名UTF-8
                reader.readLine();//第一行信息,为标题信息,不用,如果需要,注释掉
                String line = null;
                List<JSONObject> listJSONObject = Lists.newArrayList();
                while((line=reader.readLine())!=null){
                    String item[] = line.split(",");//CSV格式文件为逗号分隔符文件,这里根据逗号切分
                    String author = item[0];
                    String taskId = item[1];
                    String imgUrl = item[3];
                    
                    JSONObject json = new JSONObject();
                    json.put("author", author);
                    json.put("taskId", taskId);
                    json.put("threshold", 0.2);
                    json.put("imgUrl", "https://m.360buyimg.com/" + imgUrl);
                    
                    listJSONObject.add(json);
                }
                return listJSONObject;
            }catch (Exception e) {
                e.printStackTrace();
            }
            
            return null;
        }
    
        private static void invokeHttp(JSONObject json) {
            restTemplate = new RestTemplate();
    
            HttpHeaders headersUpload = new HttpHeaders();
            headersUpload.setContentType(MediaType.APPLICATION_JSON);
            JSONObject upload = restTemplate.postForObject("http://data.com/imgUrlCheck", json, JSONObject.class);
    
            System.out.println(JSON.toJSONString(upload));
        }
    }
  • 相关阅读:
    传统项目管理工具-scrum敏捷开发看板工具
    免费脑图软件
    项目管理软件收藏
    Scrum看板项目研发管理软件Leangoo- 阶段式游戏产品研发
    【Android开发日记】之入门篇(十二)——Android组件间的数据传输
    Android捕获崩溃异常
    【Android开发日记】之入门篇(十一)——Android的Intent机制
    Git的简单使用
    【Android开发日记】之入门篇(十)——Android应用配置文件解析
    【Android开发日记】之入门篇(九)——Android四大组件之ContentProvider
  • 原文地址:https://www.cnblogs.com/wangymd/p/15592188.html
Copyright © 2011-2022 走看看