delphi 天气预报
天气预报
var
astream : tmemorystream;
sStream : TStringStream;
jv : TJSONValue;
begin
astream := tmemorystream.Create;
sStream := TStringStream.Create( '', tencoding.UTF8 ); self.NetHTTPClient1.Get( 'http://www.weather.com.cn/adat/sk/101010100.html',
astream );
sStream.CopyFrom( astream, astream.Size );
self.Caption := sStream.Size.ToString( );
Memo1.Text := sStream.DataString; jv := TJSONObject.ParseJSONValue( Memo1.Text ) as TJSONValue;
self.Caption := jv.GetValue( 'weatherinfo', '' );
freeandnil( sStream );
freeandnil( astream );
end;
{"weatherinfo":{"city":"北京","cityid":"101010100","temp":"9","WD":"西南风","WS":"2级","SD":"22%","WSE":"2","time":"10:35","isRadar":"1","Radar":"JC_RADAR_AZ9010_JB","njd":"暂无实况","qy":"1015"}}
TJSONObject *jo = (TJSONObject*) TJSONObject::ParseJSONValue(this->Memo6->Text);
jo = (TJSONObject*)jo->Get("weatherinfo")->JsonValue; Memo6->Lines->Add(((TJSONPair*) jo->Get("city"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("cityid"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("temp"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("WD"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("WS"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("SD"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("WSE"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("time"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("isRadar"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("Radar"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("njd"))->JsonValue->Value());
Memo6->Lines->Add(((TJSONPair*) jo->Get("qy"))->JsonValue->Value());
delphi 天气预报的更多相关文章
- Delphi天气预报查询
Delphi天气预报查询 天气预报接口api(中国天气网) 开源免费天气预报接口API以及全国所有地区代码!!(国家气象局提供) 真正的中国天气api接口xml,json(求加精) ...
- Delphi7 客户端调用WebService(天气预报)
客户程序:第一步:新建一个Application. 第二步:File----->New----->Other------>WebServices----->WSDL Impor ...
- 解析天气预报JSON数据
解析天气预报JSON数据 JSON字符串 constjson2 = '{' + #13#10 +'"error":0,' + #13#10 +'"status" ...
- delphi操作xml学习笔记 之一 入门必读
Delphi 对XML的支持---TXMLDocument类 Delphi7 支持对XML文档的操作,可以通过TXMLDocument类来实现对XML文档的读写.可以利用TXMLDocum ...
- 学习笔记:7z在delphi的应用
最近做个发邮件的功能,需要将日志文件通过邮件发送回来用于分析,但是日志文件可能会超级大,测算下来一天可能会有800M的大小.所以压缩是不可避免了,delphi中的默认压缩算法整了半天不太好使,就看了看 ...
- delphi连接sql存储过程
针对返回结果为参数的 一. 先建立自己的存储过程 ALTER PROCEDURE [dbo].[REName] ) AS BEGIN select ROW_NUMBER() over(order by ...
- delphi 2010与delphi XE破解版的冲突
在系统中同时安装了Dephi 2010LITE版与Delphi XE lite后,总是会有一个有问题 是因为两者都是读取C:\ProgramData\Embarcadero目录下的license文件, ...
- [Delphi] Delphi版本号对照
VER300 Delphi Seattle / C++Builder Seattle 23 230 (Delphi:Win32/Win64/OSX/iOS32/iOS64/An ...
- delphi tidhttp 超时设置无效的解决方法
现在delphi都发布到xe8了,tidhttp还有缺陷,那就是超时设置在没有网络或者连不上服务器的时候是无效的,不管你设置为多少都要10-20秒.connectTimeout和readTimeout ...
随机推荐
- mysql-debug: Thread stack overrun
bug info 报错信息: java.sql.SQLException: Thread stack overrun: 5456 bytes used of a 131072 byte stack, ...
- layui中实现上传图片压缩
一.关于js上传图片压缩的方法,百度有很多种方法,这里我参考修改了一下: function photoCompress(file, w, objDiv) { var ready = new FileR ...
- 一个 token 控件
用于以分词形式显示某个对象的多个标签,比如: 用法 将 TagsView.h/.m 文件拷贝到你的项目文件夹,在需要用到该控件的地方导入 TagsView.h 头文件. IB 中的工作 拖一个 UIV ...
- Tiny4412 Android5.0 定制:编译生成img后如何删除原厂的apk
在android-5.0.2/build/core/Makefile的315行可以看到,这里是apk生成签名相关的地方. 315 name := $(TARGET_PRODUCT) 316 ifeq ...
- 首次尝试LINUX下的ssh命令:登录和退出
1:我现在本机安装了centos虚拟机,然后在windows桌面下使用SecureCRT ssh客户端登录我的本地虚拟机,再然后 通过centos下的ssh命令登录局域网内测试机192.168.0.1 ...
- 利用struts2的json返回方式来控制jquery.validate的remote框架,进行表单验证
- docx转doc时,防止公式被转成图片的解决办法
编辑社回复需要doc(Word 97-2003)格式的文档,可是将docx(Word 2007+)另存为doc格式时,发现公式被转成了图片.其实,最简单的办法就是,打个电话过去给编辑社:“大爷,拜托您 ...
- debezium 数据变更工具使用
1. 作用 简单概述就是CDC(change data capture),实时数据分析领域用的比较多 2. 简单使用(基于官网的docker 说明) 备注: 测试没有使用守护进程模式为了方便测 ...
- js客户端UI框架
Best jQuery UI http://b-jui.com/ jQuery EasyUI http://www.jeasyui.com/ bootstrap学习网: http://www.runo ...
- hdu 5730 Shell Necklace——多项式求逆+拆系数FFT
题目:http://acm.hdu.edu.cn/showproblem.php?pid=5730 可以用分治FFT.但自己只写了多项式求逆. 和COGS2259几乎很像.设A(x),指数是长度,系数 ...