Visual Basic - ESCRIBIR EN FICHERO TXT CON FORMATO

Life is soft - evento anual de software empresarial
 
Vista:

ESCRIBIR EN FICHERO TXT CON FORMATO

Publicado por Carlos (1 intervención) el 07/09/2006 15:09:28
Hola amigos:

Soy un joven programador de VB 6.0 y necesito hacer una serie de tareas con ficheros mediante lecturas y escrituras.

A la hora de escribir en un archivo una sucesión de números y cadenas distintas, empleo la instrucción "write" para que los datos vayan separados por comas y luego los pueda leer todos de una vez con "input"y asignárselos a sus respectivas variables. Hasta ahora todo bien.

El problema me surge cuando uno de los números es por ejemplo un double (declarado double) y su valor es entero circunstancialmente. Cuando lo escribo en el fichero, no me lo escribe en él con decimales, y creo que está ahí el problema. Todos los datos, cuando son numéricos, los necesito con una precisión de cuatro decimales (aunque sean ceros) y que la separación decimal sea punto, para que así no haya confusiones con las comas que separan todos los datos en cada línea.

He probado con la instrucción format, pero lo que consigo es que cuando escribo en fichero, los datos me aparezcan con comillas, cosa que tampoco me vale, ya que tampoco lo puedo leer correctamente.

¿Qué me aconsejais? Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ESCRIBIR EN FICHERO TXT CON FORMATO

Publicado por CSO (28 intervenciones) el 07/09/2006 23:25:31
creo entenderte q pasas directamente el numero que contiene la variable al archivo que lo escribe con write.
prueva esto:
tengo echo un programa que me lee otros archivos de texto y los reescribe encriptandolos con variables double, pero, los paso primero por un label
Set xff = CreateObject("Scripting.FileSystemObject")
Set fx1 = xff.GetFile(rutar)
fx1.Delete
Set nf = xff.CreateTextFile(rutar, True)
'Escribe
nf.Write (Lcodi) 'Lcodi es el label que contiene el texto que sera reescrito
nf.Close
cmdGuardar.Enabled = False
espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ESCRIBIR EN FICHERO TXT CON FORMATO

Publicado por jose carlos (340 intervenciones) el 08/09/2006 15:41:31
parece que los datos los escribes en el fichero en una línea separados, los datos, por comas, esto lo puedes solucionar escribiéndolos cada dato en una línea independientemente de que sean carácteres o números y a la hora de leerlos tienes que hacerlo con LINEINPUT que te recoge todo el contenido de la línea, si hay un número como 3,45 te leería dos datos 3 y 45 (si usas input) pero si usas lineinput te leerá 3,45.

con respecto a los cuatros decimales, puedes hacer una comparación y si el resultado es 0, 1, 2, o 3 le añades 4,3,2 o 1 cero al número en cuestión, para ello haces una rutina que busque la , o el . (sea este p) y el número de decimales que tiene sería len(dato)-p, lo comparas con 4 y le añades los ceros necesarios

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar