ใช่ครับ ลองเปลี่ยนเป็นค่านี้ดูครับ จะเจอ ราคาที่ถูกเก็บอยู่กลางไฟลืครับ
double gi_288 = (FileSize(li_0) - 148) / 88;
ส่วนค่าพวกนี้ใน help ไม่มีหรอกครับ คนที่รู้เค้าต้องลองผิดลองถูกมาเองครับ
หลังจากงมอยู่ซักพัก ก็เจอแสงสว่างเล็กๆ
สำหรับการอ่านค่า ไม่ต้องใช้ for ครับ ผมก็งงตั้งนานทำไมท่านใช้ for
int li_4;
FileSeek(li_0, 148, SEEK_SET);
for (li_4 = 0; li_4 < gi_288; li_4++) { time = FileReadInteger(li_0, LONG_VALUE);
open = FileReadDouble(li_0, DOUBLE_VALUE);
low = FileReadDouble(li_0, DOUBLE_VALUE);
high = FileReadDouble(li_0, DOUBLE_VALUE);
close = FileReadDouble(li_0, DOUBLE_VALUE);
volume = FileReadDouble(li_0, DOUBLE_VALUE);
}ใน 1 ชุดข้อมูล จะเก็บตัวแปรได้ 44 ไบต์ ซึ่งอันนี้ยังไม่รู้ว่าเก็บอะไรบ้าง เวลาอ่านอ่านตามนี้เลย ตัว pointer จะ shift ไปข้อมูล
ตัวต่อไปเอง(ภายใน
ชุดเดียวกัน)
แต่ถ้าต้องการจะใช้ข้อมูล
ชุดต่อไป(แท่งเทียนอื่น) ต้องเลื่อนที่ fileseek ไปทีละ 44 ไบต์
เป็น FileSeek(li_0, 148
+(n*44), SEEK_SET);
การเก็บข้อมูลของ binary จะเป็นประมาณนี้
148 byte ---------------> header of file
44 byte ----------------> ข้อมูลชุดที่ 1
44 2
44 3
44
44
.
.
. byte ----------------> ข้อมูลชุดที่ n
ไม่มี byet ปิดท้าย เป็น end of file เลย
หวังว่าคงมีประโยชน์กับหลายๆคนน๊ะครับ
ใกล้ความจริงแล้ว เมกะโปรเจคพันล้านใหญ่สุดในเจ็ดโลก 555