Maestro de programación china

Este es un archivo binario, leído y escrito con funciones de bajo nivel.

Se recomienda abrirlo primero con ultraedit y descubrir la estructura interna, como qué parte es el código de stock, qué parte es el nombre y qué parte es el precio.

Paso 2: Leer y escribir transmisiones. sistema. Lectores y sistemas binarios. La clase IO.BinaryWriter se utiliza para leer y escribir archivos binarios;

También es necesario analizar el formato de los datos. La fecha en el archivo del día especial se hizo hace mucho tiempo y ahora la he olvidado. Parece que es necesario convertir las fechas del interior. El archivo diario almacena los precios diarios durante un período de tiempo. Esto parece fácil de analizar. Fue compilado originalmente por Delphi, pero no puedo encontrarlo ahora. Quizás mi esposa lo borró.

Esto es para su referencia:

I. Archivos de datos y estructuras de datos:

Archivos de datos y estructuras de datos de Da Zhi: (Supongamos que la cotización de acciones de Da Zhi el software está instalado en el directorio D:dzh)

La ruta de almacenamiento de Shanghai Daily es: D:dzhdatasaseday y la extensión del archivo es:.

La ruta de almacenamiento de Shanghai Zhouxian es: D:dzhdatasaseweek y la extensión del archivo es:. semana.

La ruta de almacenamiento de la línea mensual de Shanghai es: d:dzhdatasasemonth y la extensión del archivo es:. mt.

La ruta de almacenamiento de Shenzhen Daily es: D:dzhDATASZnseDay.

La ruta de almacenamiento de Shenzhen Weekly es: d:dzhdatasznsweek.

La ruta de almacenamiento de la línea mensual de Shenzhen es: d:dzhdataszenmonth.

El formato de las líneas semanales y mensuales es el mismo que el de las líneas diarias.

Tomemos como ejemplo la línea diaria SDB:

1a 76:0100 D6 CD 2F 01 52 07 01 00-52 07 01 00 52 07 01 00

4D 02 00 00 00 00 00 00 00 00

1a 76: 0120 00 00 00 00 00 00-D7 CD 2F 01 60 03 01 00

1a 76: 0130 60 03 01 00 60 03 01 00-60 03 01 00 82 05 00 00

1A76:0140 D4

La longitud de cada registro es de 40 bytes:

1 - 4 bytes son la fecha, D6 CD 2F 01 convertido a decimal: 19910102.

5-8 bytes=precio de apertura (yuanes)*1000

9-12 bytes=precio más alto (yuanes)*1000

13-16 Bytes = precio más bajo (yuanes) * 1000

17-20 bytes = precio de cierre (yuanes) * 1000

21-24 bytes = monto de la transacción (yuanes)/1000

25-28 bytes = volumen (manual)

Los 12 bytes restantes no se utilizan.

Pasos de implementación:

1. Primero defina la matriz de estructura de datos diaria.

2. Luego asigne espacio en la matriz dinámica de acuerdo con el número real de registros.

3. Luego lea los datos en la matriz correspondiente.

Los datos diarios se colocan en: app_dir\DATA\SHase\Day (acciones A de Shanghai) y app_dir\DATA\SZnse\Day (acciones A de Shenzhen).

#Nota varias una vez

Estructura DZH5Day

{

Fecha larga sin firmar //Formato de fecha: 20070423

Apertura larga sin firmar; //precio de apertura

Máxima larga sin firmar; //precio más alto

Mínimo larga sin firmar; //precio más bajo

Cierre largo sin firmar; ; //precio de cierre

Suma de dinero larga sin firmar//monto de la transacción

Volumen largo sin firmar; //cantidad de la transacción

char No utilizado[12];

};

La estructura completa tiene ***40 bytes. Los lectores pueden ver todos los archivos diarios, el tamaño debe ser múltiplo de 40.

Esto facilita la lectura de los datos correspondientes:

Por ejemplo:

FILE * pFile = fopen(" 600001 . day ", " Rb ") ;

if (NULL!= pFile)

{

Y (!feof(pFile))

{

DZH5Día díaK

Fred(ampdayK,sizeof(DZH5Day),1,pFile);

......

}

}

-

ticos All Rights Reserved.