ramunico2009 2020-05-23 21:55 采纳率: 0%
浏览 331
已结题

Windows平台下如何用C语言(不是C++)和WinInet HTTP实现新浪股票实时行情数据的读取?

Sina股票数据接口(http/javascript接口取数据)如下:

以大秦铁路(股票代码:601006)为例,如果要获取它的最新行情,只需访问新浪的股票数据接口:

http://hq.sinajs.cn/list=sh601006
这个url会返回一串文本,例如:

var hq_str_sh601006="大秦铁路, 27.55, 27.25, 26.91, 27.55, 26.20, 26.91, 26.92, 22114263, 589824680, 4695, 26.91, 57590, 26.90, 14700, 26.89, 14300,
26.88, 15100, 26.87, 3100, 26.92, 8900, 26.93, 14230, 26.94, 25150, 26.95, 15220, 26.96, 2008-01-11, 15:05:32";
这个字符串由许多数据拼接在一起,不同含义的数据用逗号隔开了。

问:
Windows平台下如何用C语言(注意不是C++)和WinInet HTTP实现新浪股票实时行情数据的读取?

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-05-24 08:57
    关注

    简单起见,我只取了前面股票名字和2个列数字,后面的你可以自己添加

    #include <stdio.h>
    #include <Urlmon.h>
    #pragma comment(lib, "urlmon.lib")
    
    #include <windows.h>
    int main()
    {
        URLDownloadToFile(NULL, _T("http://hq.sinajs.cn/list=sh601006"), _T("temp.txt"), 0, NULL);
        FILE * fp = fopen("temp.txt", "r+");
        char sname[100];
        float value1, value2;
        fscanf(fp, "var hq_str_sh601006=\"%[^\,],%f,%f", sname, &value1, &value2);
        printf("%s\n", sname);
        printf("%f %f\n", value1, value2);
        return 0;
    }
    
    

    图片说明

    问题解决的话,请点下采纳

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog