iLeichun

当前位置:首页个人日志

分享两个实用的股票数据接口

分类:个人日志  来源:网络  时间:Apr 8, 2018 10:02:31 AM

一、搜狐(推荐)

可查询任意时间区间,起始时间不受限制,api为:

http://q.stock.sohu.com/hisHq?code=cn_000858&start=20180101&end=20181231&stat=1&order=D&period=d&callback=historySearchHandler&rt=jsonp


参数说明:

code:股票代码

start:开始日期

end:结束日期


返回json数据,每天1条数据,下面是其中1天:

["2018-03-09","77.30","77.10","0.20","0.26%","76.18","78.39","245529","189421.42","0.65%"]

分别表示:

时间、开盘价、收盘价、涨跌金额、涨幅、最低价、最高价、成交量、成交金额、换手率


二、新浪

最多只能获取最近1023个节点的数据(大概最近3个半月)

http://money.finance.sina.com.cn/quotes_service/api/json_v2.php/CN_MarketData.getKLineData?symbol=sz002095&scale=60&ma=no&datalen=1023


参数说明:

symbol:股票代码

datalen:节点个数,最大为1023,大于此值也最多只显示最近的1023个


返回json数据,每天有4条数据(每小时1条,若要取当天收盘数据,就是对应4条中的最后一条),下面是其中1天:

{day:"2018-03-09 10:30:00",open:"44.520",high:"47.500",low:"44.000",close:"47.200",volume:"3105149"},

{day:"2018-03-09 11:30:00",open:"47.200",high:"49.150",low:"46.790",close:"49.150",volume:"3982161"},

{day:"2018-03-09 14:00:00",open:"49.150",high:"49.150",low:"49.150",close:"49.150",volume:"1161098"},

{day:"2018-03-09 15:00:00",open:"49.150",high:"49.150",low:"49.150",close:"49.150",volume:"253529"}

分别表示:

时间、开盘价、最高价、最低价、收盘价、成交量


ps:由此可见无论是时间跨度还是数据量,都是搜狐的接口更好,推荐使用


iLeichun2.0版本正式上线啦!!!

分类:个人日志  来源:网络  时间:Jul 31, 2017 12:20:00 AM

2017年7月31日,i累存2.0版本正式上线啦!!!
域名改成:www.ileichun.com

as3设置了multiline属性为什么文本不换行?

分类:个人日志  来源:网络  时间:Nov 27, 2016 9:39:20 PM

wordWrap:

a. 设为true时,若有设置文本框宽度时,超出的文本将自动换行,与multiline设为true或false无关(即可以不添加multiline属性),可以显示多行。

b. 当设为false时将不自动换行,超出的内容将不显示。

c. 无论是否设置不影响“ ”的换行方式,若为true则两者同时起作用。

d. 既要设置自动换行,也要根据内容调整文本框高度时,可以使用textfield.autoSize设置对齐后会自动调整文本框高度,但必须先约束文本框宽度。

multiline:

a. 在使用htmlText时,若使用了<br>,那么要设置multiline才能在<br>处换行。

b. 只有当设置为true时,按下Enter键才能换行。

为什么MyEclipse启动Tomcat时的输出信息为红色?

分类:个人日志  来源:网络  时间:Mar 31, 2016 12:43:23 AM

    平时记得MyEclipse启动Tomcat时的输出信息是黑色的啊?为什么现在变成红色的了?这样跟报错的时候的颜色一样了,很不好找出错的信息了。

    如果你之前不知道有这种情况,而现在突然出现,会不会以为是MyEclipse问题了?或者以为是程序报错了?当你仔细看过输出信息之后发现并没有报错,项目网页也能正常打开。

    对于这种情况,一般是更换了Tomcat版本导致的,Tomcat 6版本在用MyEclipse启动时是黑色的信息,但如果换成Tomcat 7或更高版本就会变成红色的了。你可以更换成Tomcat 6试试,当然如果你的MyEclipse是8.5及以下版本的话还需要改另外一个地方。

    由于MyEclipse 8.5及以下版本只支持到Tomcat 6.x,如果要配置Tomcat 7版本的话也是可以的,这时只能在Tomcat 6.x那里配置,设置好Tomcat目录和jdk目录后,与配置Tomcat 6相比还需要配置Paths,值为Tomcat 7安装目录下的bin/tomcat-juli.jar。如果更换成Tomcat 6时这个Paths要手动删除,虽然不删除也不影响功能,但启动的时候输出信息仍然会是红色的,删除这个Paths信息之后启动信息就会变成黑色了。

ksc歌词文件源码手动编辑

分类:个人日志  来源:网络  时间:Jan 30, 2016 6:26:12 PM

在做一些卡拉OK形式的视频的时候,ksc歌词文件是必不可少的,但有时候下载的ksc文件可能跟下载的歌曲不同步,如果大概上都可以对得上的话,还是比较好修改的。我们用记事本打开ksc文件,将看到如下样式的歌词源码:

karaoke := CreateKaraokeObject;
karaoke.rows := 2;
karaoke.clear;

karaoke.singer := ¹庞龙¹;
karaoke.songname := ¹两只蝴蝶¹;
karaoke.TimeOffset := 0;
karaoke.AnimateBorderColor := RGB(255, 255, 255);
karaoke.AnimateColor := RGB(0, 0, 255);
karaoke.NormalBorderColor := RGB(0, 0, 0);
karaoke.NormalColor := RGB(255, 255, 255);
karaoke.TransparentColor := RGB(0, 128, 0);
karaoke.AnimateBorderThickness := 1;
karaoke.NormalBorderThickness := 1;
karaoke.Font(¹黑体¹, 24, false);
karaoke.Charset := 0;
karaoke.Width := 318;
karaoke.Height := 110;
karaoke.AutoSize := true;
karaoke.linespace := 4;
karaoke.Rows := 2;
karaoke.FirstAlignment := 0;
karaoke.FirstIndent := 30;
karaoke.NextAlignment := 1;
karaoke.NextIndent := 30;

karaoke.add(¹000:01.839¹, ¹000:08.040¹, ¹ 两只蝴蝶¹, ¹275,275,275,275,275,275,275,276¹);
karaoke.add(¹000:08.409¹, ¹000:20.270¹, ¹ 演唱:庞龙¹, ¹1976,1976,1976,1976,1976,1981¹);
karaoke.add(¹000:20.779¹, ¹000:25.590¹, ¹ .....¹, ¹801,801,801,801,801,806¹);
karaoke.add(¹000:26.099¹, ¹000:30.460¹, ¹ 亲爱的 你慢慢飞¹, ¹484,484,484,484,484,484,484,484,489¹);
karaoke.add(¹000:30.969¹, ¹000:35.520¹, ¹ 小心前面带刺的玫瑰¹, ¹455,455,455,455,455,455,455,455,455,456¹);
karaoke.add(¹000:36.029¹, ¹000:40.200¹, ¹ 亲爱的 你张张嘴¹, ¹463,463,463,463,463,463,463,463,467¹);
karaoke.add(¹000:40.709¹, ¹000:45.490¹, ¹ 风中花香会让你沉醉¹, ¹478,478,478,478,478,478,478,478,478,479¹);
karaoke.add(¹000:45.999¹, ¹000:50.460¹, ¹ 亲爱的 你跟我飞¹, ¹495,495,495,495,495,495,495,495,501¹);
karaoke.add(¹000:50.969¹, ¹000:55.440¹, ¹ 穿过丛林去看小溪水¹, ¹447,447,447,447,447,447,447,447,447,448¹);
karaoke.add(¹000:55.949¹, ¹001:00.530¹, ¹ 亲爱的 来跳个舞¹, ¹509,509,509,509,509,509,509,509,509¹);
karaoke.add(¹001:01.039¹, ¹001:07.770¹, ¹ 爱的春天不会有天黑¹, ¹673,673,673,673,673,673,673,673,673,674¹);
karaoke.add(¹001:08.279¹, ¹001:12.460¹, ¹ 我和你缠缠绵绵翩翩飞¹, ¹380,380,380,380,380,380,380,380,380,380,381¹);
karaoke.add(¹001:12.969¹, ¹001:17.980¹, ¹ 飞越这红尘永相随¹, ¹556,556,556,556,556,556,556,556,563¹);
karaoke.add(¹001:18.489¹, ¹001:20.110¹, ¹ 追逐你一生¹, ¹270,270,270,270,270,271¹);
karaoke.add(¹001:20.619¹, ¹001:22.590¹, ¹ 爱恋无前悔¹, ¹328,328,328,328,328,331¹);
karaoke.add(¹001:23.099¹, ¹001:27.770¹, ¹ 不辜负我的柔情你的美¹, ¹424,424,424,424,424,424,424,424,424,424,431¹);
karaoke.add(¹001:28.279¹, ¹001:32.550¹, ¹ 我和你缠缠绵绵翩翩飞¹, ¹388,388,388,388,388,388,388,388,388,388,391¹);
karaoke.add(¹001:33.059¹, ¹001:37.750¹, ¹ 飞越这红尘永相随¹, ¹521,521,521,521,521,521,521,521,523¹);
karaoke.add(¹001:38.259¹, ¹001:42.700¹, ¹ 等到秋风起 秋叶落成堆¹, ¹370,370,370,370,370,370,370,370,370,370,370,371¹);
karaoke.add(¹001:43.209¹, ¹001:46.360¹, ¹ 能陪你一起枯萎也无悔¹, ¹286,286,286,286,286,286,286,286,286,286,291¹);
karaoke.add(¹001:46.869¹, ¹002:10.400¹, ¹ ..[m][u][s][i][c].....¹, ¹2579,2579,2579,1579,1579,1579,1579,1579,1579,1579,1579,1579,1583¹);
karaoke.add(¹002:10.909¹, ¹002:15.200¹, ¹ 亲爱的 你慢慢飞¹, ¹476,476,476,476,476,476,476,476,483¹);
karaoke.add(¹002:15.709¹, ¹002:20.230¹, ¹ 小心前面带刺的玫瑰¹, ¹452,452,452,452,452,452,452,452,452,453¹);
karaoke.add(¹002:20.739¹, ¹002:25.380¹, ¹ 亲爱的 你张张嘴¹, ¹515,515,515,515,515,515,515,515,521¹);
karaoke.add(¹002:25.889¹, ¹002:30.300¹, ¹ 风中花香会让你沉醉¹, ¹441,441,441,441,441,441,441,441,441,442¹);
karaoke.add(¹002:30.809¹, ¹002:35.220¹, ¹ 亲爱的 你跟我飞¹, ¹490,490,490,490,490,490,490,490,491¹);
karaoke.add(¹002:35.729¹, ¹002:40.170¹, ¹ 穿过丛林去看小溪水¹, ¹444,444,444,444,444,444,444,444,444,445¹);
karaoke.add(¹002:40.679¹, ¹002:45.290¹, ¹ 亲爱的 来跳个舞¹, ¹512,512,512,512,512,512,512,512,515¹);
karaoke.add(¹002:45.799¹, ¹002:50.100¹, ¹ 爱的春天不会有天黑¹, ¹430,430,430,430,430,430,430,430,430,431¹);
karaoke.add(¹002:52.609¹, ¹002:57.060¹, ¹ 我和你缠缠绵绵翩翩飞¹, ¹404,404,404,404,404,404,404,404,404,404,411¹);
karaoke.add(¹002:57.569¹, ¹003:02.280¹, ¹ 飞越这红尘永相随¹, ¹523,523,523,523,523,523,523,523,527¹);
karaoke.add(¹003:02.789¹, ¹003:04.510¹, ¹ 追逐你一生¹, ¹286,286,286,286,286,291¹);
karaoke.add(¹003:05.019¹, ¹003:06.960¹, ¹ 爱恋无前悔¹, ¹323,323,323,323,323,326¹);
karaoke.add(¹003:07.469¹, ¹003:12.040¹, ¹ 不辜负我的柔情你的美¹, ¹415,415,415,415,415,415,415,415,415,415,421¹);
karaoke.add(¹003:12.549¹, ¹003:16.760¹, ¹ 我和你缠缠绵绵翩翩飞¹, ¹382,382,382,382,382,382,382,382,382,382,391¹);
karaoke.add(¹003:17.269¹, ¹003:22.350¹, ¹ 飞越这红尘永相随¹, ¹564,564,564,564,564,564,564,564,569¹);
karaoke.add(¹003:22.859¹, ¹003:26.950¹, ¹ 等到秋风起 秋叶落成堆¹, ¹340,340,340,340,340,340,340,340,340,340,340,351¹);
karaoke.add(¹003:27.459¹, ¹003:32.080¹, ¹ 能陪你一起枯萎也无悔¹, ¹420,420,420,420,420,420,420,420,420,420,421¹);
karaoke.add(¹003:32.589¹, ¹003:37.010¹, ¹ 我和你缠缠绵绵翩翩飞¹, ¹401,401,401,401,401,401,401,401,401,401,411¹);
karaoke.add(¹003:37.519¹, ¹003:42.330¹, ¹ 飞跃这红尘永相随¹, ¹534,534,534,534,534,534,534,534,539¹);
karaoke.add(¹003:42.839¹, ¹003:46.840¹, ¹ 等到秋风起 秋叶落成堆¹, ¹333,333,333,333,333,333,333,333,333,333,333,338¹);
karaoke.add(¹003:47.349¹, ¹003:52.180¹, ¹ 能陪你一起枯萎也无悔¹, ¹439,439,439,439,439,439,439,439,439,439,441¹);
karaoke.add(¹003:52.689¹, ¹003:56.940¹, ¹ 等到秋风起 秋叶落成堆¹, ¹354,354,354,354,354,354,354,354,354,354,354,357¹);
karaoke.add(¹003:57.449¹, ¹004:01.150¹, ¹ 能陪你一起枯萎也无悔¹, ¹336,336,336,336,336,336,336,336,336,336,341¹);
karaoke.add(¹004:01.659¹, ¹004:28.000¹, ¹ ....¹, ¹5268,5268,5268,5268,5269¹);
karaoke.add(¹004:28.509¹, ¹004:33.009¹, ¹ =[E][N][D]¹, ¹900,900,900,900,900¹);
 
其中前面那段主要是设置歌词的一些通用样式,例如设置字体:
karaoke.Font(¹黑体¹, 24, false);
 
当然最主要的还是下面的歌词部分了,比如哪个字错了,你可以修改下,改完保存就好了。但更多的时候可能是歌词慢了或者快了,特别是前面一段是好好的,而唱到后面就跟不上了,这样就需要我们修改歌词出现的时间了,我研究了好久,终于找到了规律,现在告诉大家。
比如这句:
karaoke.add(¹003:02.789¹, ¹003:04.510¹, ¹ 追逐你一生¹, ¹286,286,286,286,286,291¹);
 
¹003:02.789¹, ¹003:04.510¹   分别表示歌词出现和消失的时间点
 ¹ 追逐你一生¹    这个就不用说了,当然是歌词内容啦
 ¹286,286,286,286,286,291¹    其实最关键也是最难理解的是这句,这是表示歌词颜色变色的时间点,单位是毫秒,而这些时间的总和就是歌词从出现到消失的总时间。当然这两个总和不一样也是可以的,只是会出现歌词变色完了还没消失或者已经消失了但还没变色完的情况,当然有时候可能正需要这种样式,那就根据自己的喜好自己去调节了。
 
总之,改起来还是不难的,但很费时间。
 
 
 

 

绘声绘影利用共享导出视频时提示“遇到不适当的参数”

分类:个人日志  来源:网络  时间:Jan 28, 2016 10:07:57 PM

      当你使用绘声绘影编辑好视频,在共享标签里面选择导出的视频类型时弹出提示框提示“遇到不适当的参数”,这很可能就是当前视频不支持该种类型的导出方式。

      例如当你选择导出类型为mov时弹出该提示框,而选择其他格式时不会提示这个,那么你就不能导出mov格式的视频。

      我有一次就是这样的,我的版本是X8。不能选择mov格式,当我选择自定义的时候偶然间发现mov是灰色的,而且后面有括号写着quick time,我想很可能是这种格式要有quick time才能导出吧。而我突然想起来前一天刚卸载了quick time播放器,我想会不会是这个原因?抱着试一试的态度我重新下载了个quick time安装好了,但还是不行。后来我重启电脑,再次打开绘声绘影还是出现同样的问题。那真是没办法了,我重装了绘声绘影,这下居然好了。所以我断定这个问题跟quick time有关,不然安装绘声绘影的时候也不会强制安装quick time。

cocos2dx 3.3报错,error MSB3073: 命令“if not exist

分类:个人日志  来源:网络  时间:Sep 24, 2015 11:50:24 AM
visual studio 2012编译cocos2dx的时候报错如下(我的是3.3版本):
 
 
2>  共享冲突
2>C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V110Microsoft.CppCommon.targets(129,5): error MSB3073: 命令“if not exist "E:workspacemy_cocos2dxproj.win32Debug.win32" mkdir "E:workspacemy_cocos2dxproj.win32Debug.win32"
2>C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V110Microsoft.CppCommon.targets(129,5): error MSB3073: xcopy /Y /Q "E:workspacemy_cocos2dxcocos2dcocos2d....externalwebsocketsprebuiltwin32*.*" "E:workspacemy_cocos2dxproj.win32Debug.win32"
2>C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V110Microsoft.CppCommon.targets(129,5): error MSB3073: :VCEnd”已退出,代码为 4。
2>
2>生成失败。
2>
2>已用时间 00:00:08.98
========== 生成: 成功 1 个,失败 1 个,最新 2 个,跳过 0 个 ==========
 
 
出现这种情况是因为当前还有正在运行的cocos2dx界面,看看任务栏是不是还有cocos2dx界面窗口没有关闭,把旧的界面关闭下再编译就好了,可以正常运行了。
 
并不是每次都只能打开一个界面:
1、当你运行一个界面后,代码又没有任何改动时,前面的窗口就算没有关闭,也是可以再次运行界面的;
2、当你运行一个界面后,代码已经改动时,前面的窗口又没关闭,那么再次运行的时候就会报这个错误了。

AS3绘制空心图形的几种方法

分类:个人日志  来源:网络  时间:Mar 22, 2015 10:07:56 PM
本文以矩形为例进行说明,以下方法都可以生成一个尺寸是50*50,边框宽度为2的红色空心矩形,代码比较相似。
方法一、
var stamp:BSprite = new BSprite();
stamp.graphics.beginFill(0xff0000, 1);
stamp.graphics.drawRect(0, 0, 5050);
stamp.graphics.drawRect(224646);
stamp.graphics.endFill();
这种方法绘制的矩形外围边框有像素,里面是透明的但无像素,因此里面无法感知鼠标事件。
 
方法二、
var stamp:BSprite = new BSprite();
stamp.graphics.beginFill(0xff0000, 0); //填充里面的像素,填充范围为边框所圈起来的部分,去掉本行则里面无像素填充
stamp.graphics.lineStyle(2, 0xff0000, 1, true);
stamp.graphics.drawRect(0, 0, 4848); //由于边框设置为2,此处应该减去
stamp.graphics.endFill();
这种方法绘制的矩形外围边框有像素,里面是透明的但也有像素(第二行存在时),因此里面可以感知鼠标事件。使用本方法由于设置了边框为2,所以绘制的时候要减去2才能绘制出50*50的图形。
 
方法三、
var stamp:BSprite = new BSprite();
stamp.graphics.beginFill(0xff0000, 0); //填充里面的像素,填充范围为边框所圈起来的部分,去掉本行则里面无像素填充
stamp.graphics.lineStyle(2, 0xff0000, 1, true);
stamp.graphics.moveTo(0, 0);
stamp.graphics.lineTo(48, 0); //由于边框设置为2,此处应该减去
stamp.graphics.lineTo(48, 48);
stamp.graphics.lineTo(0, 48); //绘制到此处时会自动连接到起始点形成封闭图形,剩余一条线可省去,但前提是第2行存在的情况下,否则不会自动封闭图形
stamp.graphics.endFill();
这种方法绘制的矩形外围边框有像素,里面是透明的但也有像素(第二行存在时),因此里面可以感知鼠标事件。使用本方法由于设置了边框为2,所以绘制的时候要减去2才能绘制出50*50的图形。使用线条绘制,优点是灵活,可以绘制出各种图形,缺点是代码量比较大,但对于api里面没有提供绘制方法的图形这是很好的方法。

绝对定位的div如何居中显示

分类:个人日志  来源:网络  时间:Nov 1, 2014 5:42:06 PM
其实div定位不难,无论是普通页面还是框架页面,想让它居中显示,关键在于第一个(最外面)div的定位
代码如下:
 
<div style="position:relative; width:300px; height:300px; background:#CCC; border:1px solid #000; margin:0 auto;">
<div style="position:absolute; left:0; top:0; width:100px; height:100px; background:#F00;">
顶部div
</div>
<div style="position:absolute; left:0; bottom:0; width:100px; height:100px; background:#FF0;">
底部div
</div>
</div>
 
最外面那个div的定位要必须是相对定位relative,margin:0 auto是让他居中,然后里面的div要使用绝对定位absolute。top:0;是顶部对齐 bottom是底部对齐。

AS3 TextField中defaultTextFormat、setTextFormat()的区别

分类:个人日志  来源:网络  时间:Jul 11, 2014 9:34:40 PM

    AS3的TextField设置文本样式有两种方式,分别是defaultTextFormat、setTextFormat(),但用这两种方式设置的文本样式是有区别的,先看个例子吧:

    import flash.text.TextField;

    import flash.text.TextFormat;

 

    var tfm:TextFormat = new TextFormat();

    tfm.color = 0xFF0000;

 

    var tf1:TextField = new TextField();

    tf1.defaultTextFormat = tfm;

    tf1.text = "显示文本1";

    tf1.x = 0;

    tf1.y = 0;

    addChild(tf1);

  

    var tf2:TextField = new TextField();

    tf2.setTextFormat( tfm);

    tf2.text = "显示文本2";

    tf2.x = 0;

    tf2.y = 20;

    addChild(tf2);

 

最终看到的结果是这样的:

    显示文本1

    显示文本2

 

为什么第二个文本框的文字没有变成红色的?这就是因为defaultTextFormat和setTextFormat()是有区别的,区别之处就在于书写位置不同,defaultTextFormat要放在文本赋值之前,而setTextFormat()要放在文本赋值之后。将上述的第二段代码进行修改后:

    var tf2:TextField = new TextField();

    tf2.text = "显示文本2";

    tf2.setTextFormat( tfm);

    tf2.x = 0;

    tf2.y = 20;

    addChild(tf2);

 

这样的结果就是:

    显示文本1

    显示文本2