By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
429,422 Members | 1,615 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 429,422 IT Pros & Developers. It's quick & easy.

Borrar una linea en un TXT

P: n/a
Hola de nuevo a todos...
Agradecido a todos los que me habeis solucionado problemas anteriores...

Pero como no es novedad, me surge otro.

Recientemente buscando, adquiri un codigo para juntar 3 ficheros de texto.
El cual adapte para el desarrollo de mi DB.
El proceso es genial, pues junto los tres ficheros pulsando solo un boton.
(O determinada accion EVENTOS)

Peroooooooo¡¡¡¡¡¡

Siempre hay un pero.

Bien os comento.
El proceso lo hace fenomenal y no es problema del juntado de los ficheros, o
almenos eso creo.

Cuado yo generlos los ficheros TXT, mediante una SALIDAHACIATEXTO, dando
formato a los campos y colocando a distancias XXXX, este genera el fichero
de txt, bien, pero despues de la ultima linea escrita o generada, introduce
una linea en blanco, o un salto de linea, lo cual implica que en el
fusionado de los ficheros, no queden juntos los datos, si no que hay un
salto de linea, entre medias de los ficheros fusionados...

Alguno sabe como poder eliminar esa linea sobrante antes o durante la fusion
de los ficheros.

Os ajunto muestra de los ficheros para que podais haceros una idea mejor.

FICHERO1
----------------------
START-OF-LOG: 2.0
CONTEST: MUNICIPIOS DE ESPAÑA
CALLSIGN: EA4AYW
CATEGORY: SINGLE-OP ALL LOW SSB
CLAIMED-SCORE: 00000
OPERATORS:
NAME: JORGE GALLARDO SANCHEZ
ADDRESS: C/ LISBOA,7
ADDRESS: 28693 QUIJORNA
ADDRESS: MADRID / ESPAÑA
SOAPBOX: RECIBAN MIS MAS CORDIALES SALUDOS 73´
SOAPBOX:
SOAPBOX:
CREATED-BY: EXPURELOC V 3.0
FICHERO2
----------------------
QSO: 144 PH 2002-03-02 1515 EA4AYW 59 001 IN70XK EA2AAZ 59
010 IN93AH
QSO: 144 PH 2002-03-02 1516 EA4AYW 59 002 IN70XK EB4AFK 59
004 IN80EK
QSO: 144 PH 2002-03-02 1517 EA4AYW 59 003 IN70XK EA4BAS 59
003 IN80HL
QSO: 144 PH 2002-03-02 1522 EA4AYW 59 004 IN70XK F6FHP 55
004 IN94TR
QSO: 144 PH 2002-03-02 1527 EA4AYW 59 005 IN70XK EA7JX 59
003 IM77BM

FICHERO3
----------------------
END-OF-LOG:
El resultado de dicha fusion es:

FICHERO RESULTADO DE LA FUSION
-----------------------------------------------

START-OF-LOG: 2.0
CONTEST: MUNICIPIOS DE ESPAÑA
CALLSIGN: EA4AYW
CATEGORY: SINGLE-OP ALL LOW SSB
CLAIMED-SCORE: 00000
OPERATORS:
NAME: JORGE GALLARDO SANCHEZ
ADDRESS: C/ LISBOA,7
ADDRESS: 28693 QUIJORNA
ADDRESS: MADRID / ESPAÑA
SOAPBOX: RECIBAN MIS MAS CORDIALES SALUDOS 73´
SOAPBOX:
SOAPBOX:
CREATED-BY: EXPURELOC V 3.0

QSO: 144 PH 2002-03-02 1515 EA4AYW 59 001 IN70XK EA2AAZ 59
010 IN93AH
QSO: 144 PH 2002-03-02 1516 EA4AYW 59 002 IN70XK EB4AFK 59
004 IN80EK
QSO: 144 PH 2002-03-02 1517 EA4AYW 59 003 IN70XK EA4BAS 59
003 IN80HL
QSO: 144 PH 2002-03-02 1522 EA4AYW 59 004 IN70XK F6FHP 55
004 IN94TR
QSO: 144 PH 2002-03-02 1527 EA4AYW 59 005 IN70XK EA7JX 59
003 IM77BM

END-OF-LOG:
El fichero que deberia generar correctamente y que me es valido es:

FICHERO BUENO:
----------------------------
START-OF-LOG: 2.0
CONTEST: MUNICIPIOS DE ESPAÑA
CALLSIGN: EA4AYW
CATEGORY: SINGLE-OP ALL LOW SSB
CLAIMED-SCORE: 00000
OPERATORS:
NAME: JORGE GALLARDO SANCHEZ
ADDRESS: C/ LISBOA,7
ADDRESS: 28693 QUIJORNA
ADDRESS: MADRID / ESPAÑA
SOAPBOX: RECIBAN MIS MAS CORDIALES SALUDOS 73´
SOAPBOX:
SOAPBOX:
CREATED-BY: EXPURELOC V 3.0

QSO: 144 PH 2002-03-02 1515 EA4AYW 59 001 IN70XK EA2AAZ 59
010 IN93AH
QSO: 144 PH 2002-03-02 1516 EA4AYW 59 002 IN70XK EB4AFK 59
004 IN80EK
QSO: 144 PH 2002-03-02 1517 EA4AYW 59 003 IN70XK EA4BAS 59
003 IN80HL
QSO: 144 PH 2002-03-02 1522 EA4AYW 59 004 IN70XK F6FHP 55
004 IN94TR
QSO: 144 PH 2002-03-02 1527 EA4AYW 59 005 IN70XK EA7JX 59
003 IM77BM
END-OF-LOG:

Os muestro el codigo que estoy usando para la fusion:

MODULO
-------------

Public Function Cabrillo()
Dim cadena As String
Open CurrentProject.Path & "\Cabrillo.log" For Append As #1
Open CurrentProject.Path & "\CaDat.txt" For Input As #2
Open CurrentProject.Path & "\Ca.txt" For Input As #3
Open CurrentProject.Path & "\CaEnd.txt" For Input As #4

cadena = Input(LOF(2), #2)
Print #1, cadena

cadena = Input(LOF(3), #3)
Print #1, cadena

cadena = Input(LOF(4), #4)
Print #1, cadena
Close
End Function

EVENTO O BOTON DE FORMULARIO AL HACER CLICK
----------------------------------------------------------------------
Private Sub Comando16_Click()
On Error GoTo EtiquetaError_Err
Dim Retval
Call Cabrillo
Retval = Shell("notepad.exe " & CurrentProject.Path & "\Cabrillo.log",
vbMaximizedFocus)
EtiquetaError_Exit:
Exit Sub
EtiquetaError_Err:
MsgBox Error$
Resume EtiquetaError_Exit
End Sub
Bueno, alguna idea ???

El problema esta en que cuando yo realizo la exportacion a texto, es decir
cuando yo genero cada fichero en cuestion, este introduce un retorno de
carro, o enter, o un salto de linea, en vez de quedarse al final de los
datos.

Se me ocurren dos soluciones:

1ª Tratar el fichero de txt directamente borrando la ultima linea, (Si es
que se puede)
2º Al generar el fichero de txt, hacer queno de un salto de linea desde mis
ultimos datos.. (Que no se si sepuede tampoco)

Si se os ocurre algo me gustaria saberlo...

Gracias a todos...
Nov 12 '05 #1
Share this Question
Share on Google+
3 Replies


P: n/a
Saludos de Virginia, los E.E.U.U., cerca de la C.C. de Washington.

Aparece que sus archivos de TXT contienen retornos del carro. Usted
puede evitar esto revisando el código que genera el archivo de
"Cabrillo.log".

El código debe evaluar cada línea que venga de los archivos
originales, y escribe esa línea a Cabrillo.log solamente si no
contiene avance de línea o retorno del carro.

El equivalente del avance de línea es "Chr(10)", y el equivalente de
un retorno del carro es "Chr(13)". El código pudo parecer esto:

Open CurrentProject.Path & "\Cabrillo.log" For Append As #1
Open CurrentProject.Path & "\CaDat.txt" For Input As #2
Open CurrentProject.Path & "\Ca.txt" For Input As #3
Open CurrentProject.Path & "\CaEnd.txt" For Input As #4

cadena = Input(LOF(2), #2)
if Trim(Cadena) <> Chr(13) and Left(Trim(Cadena),1) <> Chr(10) then
Print #1, cadena

cadena = Input(LOF(3), #3)
if Trim(Cadena) <> Chr(13) and Left(Trim(Cadena),1) <> Chr(10) then
Print #1, cadena

cadena = Input(LOF(4), #4)
if Trim(Cadena) <> Chr(13) and Left(Trim(Cadena),1) <> Chr(10) then
Print #1, cadena

Esto debe quitar linefeeds y retornos del carro de Cabrillo.log.
¡Espero que esto trabaje para usted!

"Jorge Gallardo" <jo***********@eb4enn.com> wrote in message news:<c1**********@nsnmrro2-gest.nuria.telefonica-data.net>...
Hola de nuevo a todos...
Agradecido a todos los que me habeis solucionado problemas anteriores...

Nov 12 '05 #2

P: n/a
Muchas gracias por la documentacion.
Voy a ver si me sirve...
Muchas gracias...
"Dave O" <Cy******@yahoo.com> escribió en el mensaje
news:74**************************@posting.google.c om...
Saludos de Virginia, los E.E.U.U., cerca de la C.C. de Washington.

Aparece que sus archivos de TXT contienen retornos del carro. Usted
puede evitar esto revisando el código que genera el archivo de
"Cabrillo.log".

El código debe evaluar cada línea que venga de los archivos
originales, y escribe esa línea a Cabrillo.log solamente si no
contiene avance de línea o retorno del carro.

El equivalente del avance de línea es "Chr(10)", y el equivalente de
un retorno del carro es "Chr(13)". El código pudo parecer esto:

Open CurrentProject.Path & "\Cabrillo.log" For Append As #1
Open CurrentProject.Path & "\CaDat.txt" For Input As #2
Open CurrentProject.Path & "\Ca.txt" For Input As #3
Open CurrentProject.Path & "\CaEnd.txt" For Input As #4

cadena = Input(LOF(2), #2)
if Trim(Cadena) <> Chr(13) and Left(Trim(Cadena),1) <> Chr(10) then
Print #1, cadena

cadena = Input(LOF(3), #3)
if Trim(Cadena) <> Chr(13) and Left(Trim(Cadena),1) <> Chr(10) then
Print #1, cadena

cadena = Input(LOF(4), #4)
if Trim(Cadena) <> Chr(13) and Left(Trim(Cadena),1) <> Chr(10) then
Print #1, cadena

Esto debe quitar linefeeds y retornos del carro de Cabrillo.log.
¡Espero que esto trabaje para usted!

"Jorge Gallardo" <jo***********@eb4enn.com> wrote in message

news:<c1**********@nsnmrro2-gest.nuria.telefonica-data.net>...
Hola de nuevo a todos...
Agradecido a todos los que me habeis solucionado problemas anteriores...

Nov 12 '05 #3

P: n/a
Usted es absolutamente agradable. Éntreme en contacto con por favor si
usted tiene dificultades adicionales.
"Jorge Gallardo" <jo***********@eb4enn.com> wrote in message news:<c1**********@nsnmrro2-gest.nuria.telefonica-data.net>...
Muchas gracias por la documentacion.
Voy a ver si me sirve...
Muchas gracias...

Nov 12 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.