Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-06-2013
mosco mosco is offline
Miembro
NULL
 
Registrado: jul 2012
Posts: 20
Poder: 0
mosco Va por buen camino
Tratamiento de un bloque de datos

No tengo experiencia programando y quisiera que me aconsejaran.

Por un lado recibo en Ascii la direccion con 8 bytes de datos, desde la 0000000 hasta la 16000000 y por otro lado (tambien en Ascci) la intensidad de una señal con 2 bytes desde 00 hasta 99 (en la práctica este último valor pasará de 75). Cada direccion de 8 bytes llevará aparejado su valor de señal de 2 bytes. Esta señal de 2 bytes será maxima en un intervalo de direcciones. Tengo que saber la dirección media cuando la señal es maxima.

No se que hacer, si crear un fichero de texto para almacenar estos datos y luego hallar el valor/es maximo/s leyendo de nuevo los datos o hacerlo con algún tipo de base de datos.

¿Que debo hacer?.

Saludos.
Responder Con Cita
  #2  
Antiguo 17-06-2013
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Depende de cómo deba funcionar.

El principal problema que le veo al archivo de texto es cómo gestionar el acceso y mantenimiento (eliminar lo que ya no necesitas, acceder desde diferentes partes/hilos/programas, etc), algo que los gestores de bases de datos hacen muy bien. Su ventaja es que necesita menos memoria.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 18-06-2013
mosco mosco is offline
Miembro
NULL
 
Registrado: jul 2012
Posts: 20
Poder: 0
mosco Va por buen camino
Gracias Ñuño. Ayer he conseguido grabar perfectamente los datos de direccion y fuerza de señal en un fichero de texto. Tienes toda la razón pero me enfrento a algo verdaderamente dificil para mi, no tengo experiencia pero he conseguido que los datos se graben. Ahora que ya tengo la seguridad de que los datos están ahí toca pasarlos a un array dinámico, no se como pero a lo mejor alguien me pueda orientar...

Vean el código que llevo hecho y que ya graba los datos a un archivo de texto:

Código:
procedure TForm1.Button10Click(Sender: TObject);
var
    a: string;
    i, j, ndirecciones: integer;
  begin
    CrearFichero;
    ndirecciones:= 200;
     dato:=#105;                                     //Izquierda 1ra vez
    FileWrite(FHandle,PChar(dato)^,Length(dato));
    for i:=0 to ndirecciones-1 do
    begin
      Fileread(FHandle,PChar(dato)^,Length(dato));
      if dato = '(' then
        begin
          memo2.Lines[0] := '(' ;
          for j:=0 to 8 do
          begin
            Fileread(FHandle,PChar(dato)^,Length(dato));
            memo2.Lines[0] := memo2.Lines[0] + dato;
          end;
          EnviaDatos('iwconfig wlan0 | grep -i "Link Quality" | cut -f2 -d ''='' | cut -f1 -d"/"');
          RecibeDatosB;
          memo2.Lines[0] := memo2.Lines[0] + FuerzaSenialB;
          a:=memo2.Lines[0];
        end;
      EscribirDatos (a);
    end;
  dato:=#112;
  FileWrite(FHandle,PChar(dato)^,Length(dato));       //Paramos
  end;
Y vean un trozo del archivo de texto que se crea:

Código:
(00080137)00(00120137)41(00160137)41(00200137)41(00240137)40(00280137)42(00320137)42(00360137)40(00400137)41(00440137)41(00480137)40(00520137)41(00560137)41(00600137)39(00640137)39(00680137)39(00720137)40...
La fuerza de la señal (dos bytes después de los parentesis) no varia casi nada porque no tengo puesto el receptor en la antena todavía para que se mueva con esta.


Saludos.
Responder Con Cita
  #4  
Antiguo 01-07-2013
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Échale un vistazo a la clase TStringList. Después, deberías cambiar un poco el formato del archivo, separando usando saltos de línea y comas. Así puedes leer el archivo diréctamente con TStringList.LoadFromFile, saber el número de entradas con TStringList.Count, y usar otras propiedades y métodos para obtener los datos.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tratamiento de base de datos con Imagenes zugazua2001 Gráficos 5 25-03-2012 21:12:31
Bloque de Registros Morphine SQL 5 13-01-2006 15:15:56
tratamiento base de datos,me salvais la vida! kage_01 Conexión con bases de datos 1 02-12-2005 19:29:23
problema bloque try... except VRO OOP 2 22-10-2004 16:00:38
bloque de registro Manuel Firebird e Interbase 1 13-11-2003 15:48:28


La franja horaria es GMT +2. Ahora son las 00:29:52.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi