Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Leer campos en un .txt (https://www.clubdelphi.com/foros/showthread.php?t=51556)

sépoco 18-12-2007 23:07:04

Leer campos en un .txt
 
IMP20983;0;IMP20983
VK RF SE1052 SO M;9008;60490001070

Dejar en una variable cada campo separado por ;
es un archivo .txt y los campos son variables. Leo el archivo y lo traspaso a un Memo.
if OpenDialog1.Execute then
begin
AssignFile(F, OpenDialog1.FileName);
Reset(F);
while not eof(F) do
begin
Readln(F, S);
Memo.Lines.Add(S);
end;
CloseFile(F);
end;

egostar 18-12-2007 23:14:21

Hola sépoco

Bienvenido al club, te invito a que leas nuestra guia de estilo.

Por otro lado, tienes alguna pregunta concreta sobre lo que posteas?

Salud OS

sépoco 18-12-2007 23:23:41

Cada línea del archivo .txt es diferente.
Cada campo está separado por punto coma (;). Los campos son de largo variable.
Necesito dejar en una variable cada campo ya que luego lo voy a insertar en una tabla de una Base de Datos SQL Server.

poliburro 18-12-2007 23:39:47

de ser así, y si pasaras el archivo a SqlServer 2000, lo mejor es hacerlo en una DTS. No hay nada mejor que eso, ni siquiera delphi. OJO, amo delphi.

sépoco 18-12-2007 23:48:21

Qué es eso?
Necesito ayuda no .....

egostar 19-12-2007 00:16:26

Dale una leida a esto

http://www.netveloper.com/contenido2...7_0&IDP=4&P=64

Salud OS

sépoco 19-12-2007 00:26:38

Ocupo SQL Server Management Studio Express.
No existe la opción.
Gracias de todos modos.
Sé de Bases de Datos y varias, lo que no sé es Delphi.
Tu dijiste que amabas Delphi.
Sólo quería leer campos desiguales en una misma línea separados por ;
Parece que es muy complejo, anyway.
Buscaré en otro lado.
Gracias de todas maneras.

egostar 19-12-2007 00:29:03

Bueno, pues entonces ve esta función, hace lo que quieres

http://www.q3.nu/trucomania/truco.cgi?302&esp

Salud OS

poliburro 19-12-2007 01:23:58

Cita:

Empezado por sépoco (Mensaje 253427)
Ocupo SQL Server Management Studio Express.
No existe la opción.
Gracias de todos modos.
Sé de Bases de Datos y varias, lo que no sé es Delphi.
Tu dijiste que amabas Delphi.
Sólo quería leer campos desiguales en una misma línea separados por ;
Parece que es muy complejo, anyway.
Buscaré en otro lado.
Gracias de todas maneras.


Pues mi hermano, jajaja, nadie te detiene a buscar aquí, Preguntas tan complejas como las que haces, de verdad nos quemán el coco.

ixMike 19-12-2007 14:45:55

Cita:

Empezado por poliburro (Mensaje 253436)
Preguntas tan complejas como las que haces, de verdad nos quemán el coco.

¿Preguntas? No he visto un solo signo de interrogación. Se nota que sépoco tiene prisa, parece que escribe como en un telegrama :D sin ánimo de ofender.

Si te tomas cinco minutitos, igual puedes plantear la pregunta de forma clara y amena. Un buen ejemplo (no hace falta que tu pregunta sea tan elaborada, sólo es una guía.).

Saludos.

P.D.: También podrías buscar en el club cómo separa cadenas (tokens, creo que se llama).

juanlaplata 19-12-2007 18:39:18

En este hilo, esta como abrir un archivo linea por linea, solo te quedaria crear una funcion que lea los caracteres entra los ';' de cada linea.
Por ejemplo hay funciones que te devuelven la pos en la que se encuentra un caracter dentro de un stiring, con eso y el copy(texto, pos_ini, cant ) ya estas a un pasito del exito.


La franja horaria es GMT +2. Ahora son las 10:50:10.

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