package com.gear.swx.utils;
|
|
import com.gear.swx.vo.SyncCurrentValueFromLdVo;
|
|
import java.io.BufferedReader;
|
import java.io.InputStreamReader;
|
import java.math.BigDecimal;
|
import java.net.HttpURLConnection;
|
import java.net.URL;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
public class HttpGetCsvUtils {
|
|
|
public static List<SyncCurrentValueFromLdVo> getCurrentValueFromLdVo(String code, String ip){
|
try {
|
String urlStr = "http://"+ip+"/exchange_curr.action?username=673468708&password=8a1576001bea15a3e5906ba3af004392&id="+code+"&column=mc,zf,price,zdf";
|
// 创建 URL 对象
|
URL url = new URL(urlStr);
|
|
// 创建 HTTP 连接
|
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
|
connection.setRequestMethod("GET");
|
|
// 获取输入流
|
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
|
|
String firstLine = reader.readLine();
|
System.out.println(firstLine);
|
String[] clomns = firstLine.split(",");
|
Integer codePostion = 0;
|
Integer namePosition = 1;
|
Integer pricePosition = 2;
|
Integer zdfPosition = 3;
|
for(int i = 0; i < clomns.length; i++){
|
if(clomns[i].equals("代码")){
|
codePostion = i;
|
continue;
|
}else if(clomns[i].equals("价格")){
|
pricePosition = i;
|
continue;
|
}else if(clomns[i].equals("名称")){
|
namePosition = i;
|
continue;
|
}else if(clomns[i].equals("涨跌幅")){
|
zdfPosition = i;
|
}
|
}
|
List<SyncCurrentValueFromLdVo> result = new ArrayList<>();
|
// 读取 CSV 数据
|
String line;
|
while ((line = reader.readLine()) != null) {
|
System.out.println(line);
|
System.out.println(line); // 打印每一行数据
|
String[] dataArray = line.split(",");
|
SyncCurrentValueFromLdVo vo = new SyncCurrentValueFromLdVo();
|
vo.setCode(dataArray[codePostion]);
|
vo.setPrice(new BigDecimal(dataArray[pricePosition]));
|
vo.setZdf(new BigDecimal(dataArray[zdfPosition]));
|
vo.setName(dataArray[namePosition]);
|
//更新对应产品的缓存100条数据
|
|
result.add(vo);
|
}
|
// 关闭连接
|
reader.close();
|
connection.disconnect();
|
return result;
|
} catch (Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return null;
|
}
|
}
|