前言

新型冠状病毒的出现,着实让人紧张。我每天一大早都会去查看今天的最新数据,可是每次的数据都挺让人揪心的。今天突然间很想看看过去的历史的数据,结果查了很多资料都不是很全。反正国家让我们待在家里做贡献,那我们也可以多做做研究,偶然的机会发现了一个API可以查到历史数据,于是就用.NET Core 3.1实现了一下。

编码与实现

通过查看返回的数据可以知道,其数据是标准的JSON的格式,这样就减少了更多的工作。返回数据如下图所示:

通过分析其数据结构,可以知道其主要有如下属性:

lastUpdateTime: string,最新更新时间

chinaTotal: object,数据汇总

chinaAdd: object,新增数据汇总

chinaDayList: array,每日历史数据

chinaDayAddList: array,每日新增历史数据

areaTree: array,区域数据(含国内省市及国外数据)

项目详情如下:

最后就是编码实现,如果获取数据,这个也比较简单,使用HttpClient+Newtonsoft.Json即可很快实现,需要注意的是这个接口返回的数据需要二次反序列化。

运行效果如下:

对数据进行格式化展示后输出:

最后将我们需要的数据保存起来,这个就更简单了:

private static void SaveToFile(nCoVData data)
{if (!File.Exists("data.json")){using (FileStream fs = new FileStream("data.json", FileMode.Create, FileAccess.Write)){using (StreamWriter sw = new StreamWriter(fs)){sw.Write(data.Data);sw.Flush();sw.Close();}}}else{using (FileStream fs = new FileStream("data.json", FileMode.Open, FileAccess.Write)){using (StreamWriter sw = new StreamWriter(fs)){sw.Write(data.Data);sw.Flush();sw.Close();}}}
}

完整代码地址:https://github.com/edison0621/2019nCoVData

后续

既然数据有了,其他的也就好办多了,比如各种图形展示。最后武汉加油,中国加油,向白衣天使们致敬,我们一定能度过这道坎。

使用.NET Core优雅获取并展示最新疫情数据相关推荐

  1. 使用Python获取最新疫情数据,制作可视化动态地图,实时展示各地情况

    愿世界再无病痛,盼疫情早日结束 序言 效果展示 准备工作 代码展示 序言 疫情降临转眼已经第三年了,时间过得真快,愿疫情早点结束,世界不再多灾多难. 最近疫情稍微好转一些了,所以咱们获取一下最新的疫情 ...

  2. (Scrapy框架)爬虫获取百度新冠疫情数据 | 爬虫案例

    目录 前言 环境部署 插件推荐 爬虫目标 项目创建 webdriver部署 项目代码 Item定义 中间件定义 定义爬虫 pipeline输出结果文本 配置文件改动 验证结果 总结 前言 闲来无聊,写 ...

  3. 【MYSQL】分组之后获取每组最新的数据

    记录一次有点麻烦的sql 可以直接复制拿去测试,一开始我也百度来着,发现要么没法满足我的需求,要么就连看下去的欲望都没有 建表测试demo: CREATE TABLE `p_test` (`id` v ...

  4. javaweb课程设计-基于SSM框架的疫情数据统计分析系统源码+数据库,可以进行疫情数据录入、疫情数据查询、图表展示

    疫情数据统计分析系统 完整代码下载地址:基于SSM框架的疫情数据统计分析系统源码+数据库 介绍 疫情数据统计分析系统是一个基于SSM框架的网页端系统,项目中实现的功能如下:用户访问网站可以浏览全国疫情 ...

  5. 聊天功能获取聊天记录列表并展示最新一条聊天记录

    聊天功能获取聊天记录列表并展示最新一条聊天记录 记录一次项目中聊天功能,需要获取好友聊天记录列表并且展示最新一条聊天记录,同时获取新消息的数目的sql语句. SELECT count(read_sta ...

  6. 在树莓派上使用 PowerShell 调用 Azure 上的 .NET Core API 获取疫情数据

    点击上方蓝字关注"汪宇杰博客" 导语 最近因为疫情被关在家里,做了个无聊成就:我们将在树莓派上用 PowerShell 调用 Azure 上的一个 .NET Core 写的 API ...

  7. 将 ASP.NET Core 2.1 升级到最新的长期支持版本ASP.NET Core 3.1

    目录 前言 Microsoft.AspNetCore.Mvc.ViewFeatures.Internal 消失了 升级到 ASP.NET Core 3.1 项目文件(.csproj) Program. ...

  8. 飞利浦、TCL、海信、REASONANCE、七彩虹、Amazfit在CES展示最新新品 | 美通企业日报...

    今日看点:飞利浦.TCL.海信.REASONANCE.七彩虹.Amazfit.金宝通在CES展会展示最新新品.美国商业专利数据库调查显示,三星拥有全球最多有效专利资产.英国防撕咬服装生产商BitePR ...

  9. Spring Cloud配置中心获取不到最新配置信息的问题

    本篇源于Spring Cloud Config的一个问题,但这个问题并非所有人都会遇到.如果您遇到了,那必须得看看这篇,如果没有遇到您也应该看看,防患于未然! 问题描述 之前有朋友提出Spring C ...

最新文章

  1. [转载] 七龙珠第一部——第004话 掳人的妖怪——乌龙
  2. 请与计算机管理员联系,电脑的限制被取消,请与管理员联系 解决方案
  3. 5秒到1秒,记一次效果“非常”显著的性能优化
  4. 免费教材丨第49期:数学基础课程----漫画线性代数、微积分超入门
  5. shutil python_shutil模块
  6. linux lcd驱动调试 echo dev/fb0,LCD驱动程序 - osc_msmij2gf的个人空间 - OSCHINA - 中文开源技术交流社区...
  7. 『数据库』数据库的查询可不是只知道Select就可以的--关系数据库系统的查询处理
  8. RocketMQ的架构设计详解
  9. 物联网架构----双机热备Keepalived了解
  10. 业界首发|云原生领域首本架构白皮书重磅发布
  11. 谷歌地图 街景 api_Google使街景在地图中更加突出
  12. 服务器托管带宽单线、双线、BGP线路之间区别有哪些
  13. 注册表编辑器,任务管理器,己被系统管理员停用----应急响应
  14. 【XGantt教程】为甘特图分组添加舒适排序选项的三个步骤
  15. docker 安装 shipyard(中文版) 集群管理平台
  16. 【 rbx1翻译 第七章、控制移动基座】第二节、运动控制级别
  17. 死锁简述(死锁产生的四个条件,预防死锁)
  18. 2021朋友圈都在传的10本书,找到了
  19. 16.15-S7-1200-开关量PWM的方式控制-固态继电器调节水温
  20. Python 什么是flask框架?快速入门

热门文章

  1. 编程算法 - 切割排序 代码(C)
  2. 弄断过河电缆_你说的是:剪断电缆线
  3. skype自动回复_如何在Windows 10上阻止Skype自动启动
  4. 计算机程序设计vb课后题,《VB程序设计》课后题答案
  5. 接收上传的multi-file的文件(四)
  6. 【leetcode】521. Longest Uncommon Subsequence I
  7. CentOS7安装EPEL源
  8. 陈松松:如何锁定细分领域,视频营销才更容易持续做下去
  9. android 蓝牙各种UUID(转载)
  10. 2010年11月编程语言排行榜:手机里的代码