比如这个Candle是2009-02-12 03:05:10这个时间的,Open是1.3242,Close是1.3223,那么
StringBuilder stamp = new StringBuilder();
//这时stamp是空的
stamp.append(time).append("[").append(format.format(time)).append("] / ");
//stamp的值变成8549823492/
stamp.append(open).append(" - ").append(close);
//stamp的值变成“8549823492/1.3242-1.3223”
仅此而已。
hashCode()方法只是为了唯一标识一个CandleData类而已。
如果你下载的是Bin格式的,才需要用他提供的例子。
他的CandleData这个类是为了读BIN格式的。你也不一定要用他的思路。他们网页上已经清楚的说明了各种文件的格式。
你完全可以自己写。 谢谢!
那
@Override
public int hashCode() {
final int prime = 31;
int result = super.hashCode();
long temp;
temp = Double.doubleToLongBits(close);
result = prime * result + (int) (temp ^ (temp >>> 32));
呢?
还有8549823492是怎么得出来的呢,转换到时间的算法呢?
[ 本帖最后由 kuhasu 于 2009-2-14 00:52 编辑 ] 8549823492是1970 年1 月1 日00:00:00 GMT 以来到那个时间点经过的毫秒数。这个数字我是为了举例子随便写的。
hashCode()方法只是为了唯一标识一个CandleData类而已。
可参考阅读http://www.javaresearch.org/article/38075.htm 谢谢!
举个例子,对于日期时间的longlong型和价格、数量的8 byte long double(8位长双精度)型
01.01.2004 08:00,80.61,80.71,79.8,83.73,252937
000000F9CEBAB800 01.01.2004 08:00
4054270A3D70 A3D7 80.61
40542D70A3D70A3D 80.71
4053F33333 33 3333 79.8
4054EEB851EB851F 83.73
410EE0480000 00 00 252937
用java或者C#,怎样进行数据转换呢
还有就是
temp = Double.doubleToLongBits(close);
result = prime * result + (int) (temp ^ (temp >>> 32));
变量我明白,运算符和函数就不懂,请教下,谢谢 CandleData里的这个方法就是用来转换的啊。
public void fromBytes(byte[] bytes, int off) {
time = getLong(bytes, off);
open = getDouble(bytes, off + 1 * 8);
close = getDouble(bytes, off + 2 * 8);
low = getDouble(bytes, off + 3 * 8);
high = getDouble(bytes, off + 4 * 8);
vol = getDouble(bytes, off + 5 * 8);
}
运算符和函数是什么意思,我想您google一下就会很容易找到了。 另外,统一回答一下你的短消息。
我载的是BIN,他是zip压缩的,java有自带的zip解压缩实现,c#也有很多免费的zip解压缩实现。
我没有转成txt,我要的就是二进制的。
某个目录下批量的转化,我想你很容易可以下写一个的。
另外,建议您仔细阅读他们网站上的说明。里面有很多有用的信息。 原帖由 mugger 于 2009-2-14 16:30 发表 http://www.forex-town.com/images/common/back.gif
另外,统一回答一下你的短消息。
我载的是BIN,他是zip压缩的,java有自带的zip解压缩实现,c#也有很多免费的zip解压缩实现。
我没有转成txt,我要的就是二进制的。
某个目录下批量的转化,我想你很容易可以下写一 ...
谢谢:) 我编程方面实在是菜,尤其用C#,java处理数据方面。所以还是决定直接下载那个csv了,尽管稍微慢些。
附上反编译的swf文件。批量下载的时候月份需要注意的是是从0开始代表1月的。 适合自己的才是最好的!:lol
Good luck!
回复 18# 的帖子
呵呵,这个东西有什么适合不适合自己的,反正搞完数据也是要共享的。只不过有方便工具,有几个人互相合作,速度快些罢了。
也不是人人都精通数据转换的数据编程,而且精通一种语言的其他的也不一定精通,熟悉编译的不一定熟悉反编译,
只是这样而已。所以才想到了协作的方式。
bin的文件都是单个的,一段儿一段儿的,那你单个文件怎么用呢?还没有数据库的存储是以一大堆bin做基础的吧:) 把文件都拼起来就成一个了~
你也可以不拼,要什么时间的数据,就读什么文件,反正文件命名都有规则的。
至于数据库,bad idea~