Java实现CURL,与把字符串结果写到json文件

Posted 小鹏_戛然而止

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java实现CURL,与把字符串结果写到json文件相关的知识,希望对你有一定的参考价值。

@Override
    public String getUrlRestInfo(String[] command, String fileName) {
        //新建一个StringBuffer
        StringBuffer sb = new StringBuffer();
        //过程
        Process pro = null;
        try {
            //执行命令
            pro = Runtime.getRuntime().exec(command);
        } catch (IOException e) {
            e.printStackTrace();
        }
        //
        assert pro != null;
        BufferedReader br = new BufferedReader(new InputStreamReader(pro.getInputStream()), 4096);
        String line = null;
        int i = 0;
        //先读取每行的数据
        while (true) {
            try {
                if (!((line = br.readLine()) != null)) break;
            } catch (IOException e) {
                e.printStackTrace();
            }
            if (0 != i)
                sb.append("\\r\\n");
            i++;
            sb.append(line);
        }
//        System.out.println(sb.toString());
//       return JSON.parseObject(sb.toString());
        //调用接口,然后写到文件里

        try {
            writeToText(sb.toString(), fileName);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return sb.toString();
    }

    /**
     * 读取字符串,生成txt 文件 已解决未设置编码时,在项目中直接打开文件,中文乱码问题
     * WriteText.writeToText(musicInfo,fileName)直接调用
     *
     *
     */
        public static void writeToText(String musicInfo, String fileName) throws IOException {
            // 生成的文件路径
//            String path = "G:\\\\data\\\\" + fileName + ".txt";
            String path = "C:\\\\Users\\\\dell\\\\IdeaProjects\\\\yarnalert\\\\src\\\\main\\\\resources" + fileName + ".json";
            File file = new File(path);
            if (!file.exists()) {
                file.getParentFile().mkdirs();
            }
            file.createNewFile();
            // write 解决中文乱码问题
            // FileWriter fw = new FileWriter(file, true);
            OutputStreamWriter fw = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(musicInfo);
            bw.flush();
            bw.close();
            fw.close();

        }

 

以上是关于Java实现CURL,与把字符串结果写到json文件的主要内容,如果未能解决你的问题,请参考以下文章

php curl_init json 有个问题让我搞不清楚哪里出了问题

java解析从接口获取的json内容并写到excle(只写与标题匹配的值,并非把所有的接口返回值都写进去)

使用cURL PHP获取instagram公共JSON feed

设计一个java接口,接收json,并且将处理结果按json的格式返回

格式化Curl返回的Json字符

PHP curl传 json字符串