用Java写股票查询系统

这是一个分割股票数据的

package com.celineou.Stock;

import javafx.collections.FXCollections;
import javafx.collections.ObservableList;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimerTask;

/**
 * 
 * @author  Team37
 * @return stock data
 */
public  class StockData implements StockInterface {
    public   String s;
    private int isNull=0;
    ObservableList<TableSet> tableData= FXCollections.observableArrayList();
   public int getIsNull(){
	   return isNull;
   }
   public void setIsNull(){
	   this.isNull = 1;
   }
   public void returnNull(){
	   this.isNull = 0;
   }
    public StockData(String s){
        this.s=s;
        prePare(s);
    }

    public StockData(){}
    
    public void prePare(String s){//输入的字符串从这里进来,判断有多少组数据,再用循环去调用httpData
        String[] sourceArray = s.split(",");//统计要测几组数据
        for(int i=0; i < sourceArray.length; i++){
            String temp=httpData(sourceArray[i]);//http请求返回的数据
            String array[]=convert(temp);
            if(array.length == 1){
            	setIsNull();
            }else{
            addData(array);
            }	
      }
    }

    public void addData(String[] s) {//添加tableColumn元素的值
        Calendar calendar=Calendar.getInstance();
        Date time = calendar.getTime();
        String recTime=(new SimpleDateFormat("HH:mm:ss")).format(time);
        String recDate=(new SimpleDateFormat("yyyy-MM-dd")).format(time);
        tableData.add(new TableSet(s[0],s[1],s[2],s[3],s[4],s[5],s[8],s[9],recDate,recTime));
    }

    //返回加入的observablelist
    public ObservableList<TableSet> getTableData(){
        return this.tableData;
    }

    /**
     * @param urlAl
     *            :请求接口
     * @param httpArg
     *            :参数
     * @return 返回结果
     * @author Team37
     */
    public  String httpData(String httpArg){
        String httpUrl = "http://hq.sinajs.cn/list=";
        BufferedReader reader = null;
        String result = null;
        StringBuffer sbf = new StringBuffer();
        httpUrl = httpUrl + httpArg;

        try {
            URL url = new URL(httpUrl);
            HttpURLConnection connection = (HttpURLConnection) url
                    .openConnection();
            connection.setRequestMethod("GET");
            connection.connect();
            InputStream is = connection.getInputStream();
            reader = new BufferedReader(new InputStreamReader(is, "GBK"));
            String strRead = null;
            while ((strRead = reader.readLine()) != null) {
                sbf.append(strRead);
                sbf.append("\r\n");
            }
            reader.close();
            result = sbf.toString();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return result;
  
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值