Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   importar un archivo txt a un dbmemo (https://www.clubdelphi.com/foros/showthread.php?t=22683)

jfragueiro 23-06-2005 16:47:20

importar un archivo txt a un dbmemo
 
Necesito importar el texto de un documento txt a un dbmemo, para su posterior tratamiento dentro de mi aplicación, como lo importariais? se que es algo muy simple, pero no logro encontrarlo. Me gustaria que me explicaseis con que componente lo importo etc...

Un saludo y muchas gracias de antemano.

roman 23-06-2005 16:53:47

¿No te funcionaría DBMemo.Lines.LoadFromFile('archivo.txt')?

// Saludos

jfragueiro 23-06-2005 17:19:46

No me funciona
 
veras si intento eso me dice:
Project project1.exe raised exception class EFOpenError with message 'cannot open file c:\Pedidos.text'. Process stopped. Use Step or Run to continue.

No hay ninguna otra forma??

roman 23-06-2005 17:23:32

Cita:

Empezado por jfragueiro
si intento eso me dice:
Project project1.exe raised exception class EFOpenError with message 'cannot open file c:\Pedidos.text'.

Bueno, pero esto no parece ser un problema del dbmemo sino de que no puede abrir el archivo:


Cita:

Empezado por ayuda de Delphi
EFOpenError

EFOpenError is the exception class for file-opening errors during streaming.

Description

EFOpenError is raised when an application cannot open a specified file. This can occur, for example, because the file doesn’t exist or is not in the directory where the application is searching for it.

¿Estás seguro de que el archivo está donde crees que está?

// Saludos

jfragueiro 23-06-2005 17:29:21

si falla te explico:
 
Verás, lo he intentado hacer a través de un componente que añade la ruta del archivo, poniendolo a mano en el codigo incluso poniendolo en el directorio de la aplicación, y en todos ellos me da el mismo error. Te agradeceria si existiera otra forma de hacerlo.

Muchas gracias otra vez

jfragueiro 23-06-2005 17:40:29

Ya lo he conseguido
 
Se ve que el problema era el tamaño del nombre del archivo, asi que poniendolo más corto no hay ningún problema.

Ahora bien, como puedo recorrer los caracteres del tmemo??

necesito ciertos campos contenidos en el, que siguen un formato..

Muchas gracias por anticipado, prometo que esta será mi ultima pregunta.

roman 23-06-2005 17:41:12

Te pareceré pesado pero no creo que sea cosa de buscar otros métodos cuando el descrito es el más simple y debe funcionar (lo acabo de probar).

En el código que pones escribes

pedidos.text

¿no será que el archivo se llama?

pedidos.txt

// Saludos

roman 23-06-2005 17:46:05

Cita:

Empezado por jfragueiro
Se ve que el problema era el tamaño del nombre del archivo, asi que poniendolo más corto no hay ningún problema.

¡Cáspita! ¡Pues que versión de Windows usas!!??

Yo acabo de probar con


Código Delphi [-]
DBMemo1.Lines.LoadFromFile(
'facturas que se enviarán por correo a los clientes que compraron antes de que terminara la primavera.txt');

y funcionó sin problemas.

// Saludos

jfragueiro 23-06-2005 17:47:44

Tienes toda la razon
 
Román, te lo agradezco de veras y por supuesto q tienes toda la razon, el problema creo que era la longitud del archivo, ya que he puesto ped.txt y no hay ningún problema, lo único es que necesito sacar ciertos grupos de caracteres, sabes si hay alguna función q seleccione por ejemplo a partir de cierto caracter y hasta tal carácter o determinado número de caracteres.


Un saludo y muchas gracias de nuevo.

roman 23-06-2005 18:04:14

Cita:

Empezado por jfragueiro
ya que he puesto ped.txt y no hay ningún problema

Ves que ahora omites la e en la extensión del archivo. No sé porque creo que ese era el problema y no la longitud del nombre.

Cita:

Empezado por jfragueiro
sabes si hay alguna función q seleccione por ejemplo a partir de cierto caracter y hasta tal carácter o determinado número de caracteres.

Usa la función Copy:

Copy(S, Start, Length)

que devuelve la parte de S desde el caracter Start y con Length caracteres de largo (o el final de la cadena, lo que ocurra primero).

// Saludos

jfragueiro 23-06-2005 18:47:56

Muchas gracias
 
Joer tio eres un hacha, muchas gracias por todo, todas las dudas solucionadas en un segundillo.

Un saludo y gracias otra vez


La franja horaria es GMT +2. Ahora son las 09:14: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