你在学习的过程中会发现,自己是真的笨。----------------------著名学习理论---蛋蛋的忧伤
最近公司需要我处理一些数据。过程就是获取数据,处理数据,写入数据到xlsx文件,制作成工具交付到一个项目的技术和公司运营使用。要求就是生成结果快,操作简单,数据准确,结果清晰。过程简单明了,没有复杂的调用和逻辑关系。
现在就考虑每一个过程的处理细节。
我们获取数据有两种方式,通过接口,直接查数据库。本着能不动数据库就不动的原则,第一次直接通过接口获取数据。这是第一个坑。要处理的数据是一个月的,请求接次数多,返回数据量大,返回的数据是json格式,处理又需要一点时间。第一次编写完成,运行时间达到两个小时,我的妈呀,这是个神仙写的程序吧,这个持久。这不行啊,交给他们用我害怕他们受不了。
小老弟,有点东西哦
改,我有什么办法,只有改,谁叫我那么体贴别人,特别是运营的小姑凉。想到多线程,因为请求接口没有先后关系,可以分多个线程一起请求。嗯,不错,执行时间大大的缩短,从两个小时缩短到半个小时,这是质的飞跃,这是质的突破,是无产阶级取得的第一次胜利。可以了可以了。半小时不长,运营应该可以接受。开心啊,空气是这么的清新。
高兴不能当饭吃,但是吃饭特别有胃口。--------------著名美食理论---蛋蛋的忧伤
在执行一次吧,在看看细枝末节的东西对不对。我的天啊,为什么第一次和第二次的结果不一样。有bug?不可能,我写的程序都没有一个警告。看图警告0。
在测试几次。打印每次请求接口的返回状态。哦,好像发现了什么不得了的问题。查询一个月的数据,差不多需要请求26万次(应该可以做一些减少,至少我还不知道),就是因为太频繁,接口受不了,一些请求超时,获取不到数据。自然而然每次处理的结果都不一样。太频繁不好嘛???他居然受不了。
也尝试过把请求失败的记录下来,在最后在请求一次。但是很神奇,居然处理完后还是不对。灵异事件啊。
有鬼,停止交易。
ok,我知道了。我的问题,虽然找不出问题在哪里。就是这么诚恳。
放弃了,获取数据库数据吧。数据库他不香嘛。又快又精准,返回数据友好,数据处理快,不容易出错。最好的一点就是快,几秒钟就能获取结果,太快了,我喜欢。
好吧,万水千山总是情,第一关结束。
处理数据的时候就不是什么大事了,基本流程,基本操作,需要注意一点的就是细心,数据不能出错。
数据处理结束的有点触不及防
生活嘛,有时候就是这么的猝不及防,没有一点点防备,没有一点点顾虑,你就这样出现........ -------著名文艺理论---蛋蛋的忧伤
处理好数据 现在就需要把数据写如到xlsx文件里。c++写数据到xlsx文件可以通过基本的文件流,但是不友好,内容太单一,没有对单元格的一些设置,我要达到的一些效果不能完成。所以现在就体现出网络的重要性。
没有手机没有网,给你一千块钱,让你在屋子里待一个月。能不能完成挑战。答案是不能。2020年新型冠状病毒。
你总是会想像一些美好的生活,但这样的生活到来的时候确发现自己没有那个境界去好好的体验。----------著名生活理论---蛋蛋的忧伤
上网查询了一下,有一个库对c++很友好,libxl库。有很详细的使用文档,对xlsx文件的设置,编辑很全面,函数丰富到我都不好用了。
代码就是这么乱,我拿自己都没有办法
这个需求到现在应该是结束了。但是精益求精的我过了几天又打算在拿出来修改修改,做一些调整。标题的问题现在就出现了。
你见过一片红嘛,很壮观的那种
鬼东西,我怎么可能没有包含库,没有添加头文件,没有添加命名空间。真的有时候会严重怀疑人生,我就改了一点东西,又必要给我见红嘛,我怀疑他对我有歧视,嫉妒我的美貌和才华,我本生来平凡,把仅有的一点精力放在了工作上,工作还没有一点起色。嫉妒我的事业???可拉到吧。
有鬼,C2143错误
百度一哈,你就知道。
网络是个好东西
我在xxxx.h文件里定义函数,在xxxx.cpp文件里实现函数功能。在xxx.cpp文件里报错c2143,我一直在.cpp里找错误,确实报错一直都在.cpp文件。最后才发现在xxx.h文件里缺少一个逗号";"。
什么鬼错误,什么破软件,肯定不是我的问题。我这么善良可爱。好了,我认识到自己的错误了,都是月亮惹的祸。
ok,就是这么惊悚。