package com.example.demo.util;
import org.yaml.snakeyaml.Yaml;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.Map;
/**
* @Author: liyue
* @Date: 2021/11/23/14:21
* @Description:
*/
public class YamlUtil {
public static void main(String[] args) throws Exception {
System.out.println(getPath("https://last.yml"));
}
public static String getPath(String url) throws IOException {
Yaml yaml = new Yaml();
InputStream in = Dol(url);
Map<String, Object> map = yaml.loadAs(in, Map.class);
return map.get("path").toString();
}
public static InputStream Dol(String urlPath) throws IOException {
URL url = new URL(urlPath);//path为url路径
HttpURLConnection conn = (HttpURLConnection) url.openConnection();// 利用HttpURLConnection对象,我们可以从网络中获取网页数据.
conn.setRequestProperty("Content-Type", "application/json");
// conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
conn.setRequestProperty("connection", "keep-alive");
conn.setRequestProperty("User-Agent", "Mozilla/4.76");
conn.setUseCaches(false);//设置不要缓存
conn.setInstanceFollowRedirects(true);
conn.setDoOutput(true);
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream(); // 得到网络返回的输入流
return is;
}
}
yml 文件 根据网络地址获取输入流,并解析文件内容
于 2022-10-18 15:00:13 首次发布