Cuenta erronea de lineas en txt

Cuenta erronea de lineas en txt

Postby FranciscoA » Fri Jan 22, 2021 11:13 pm

Amigos.
Tengo un fichero .txt con 16 lineas de datos y varias columnas, sin ningún tipo de separador.
Si lo abro con un editor de texto, refleja correctamente la cantidad de lineas, pero no lo hace con las funciones MemoRead y MLCount.
Aqui está el código que estoy usando, y su respectivo fichero.txt.
Qué estoy omitiendo?

Code: Select all  Expand view
#include "fivewin.ch"
Function Main()

local cFile := TrueName(".\Retenc.txt")
local cBuf  := MemoRead( cFile )
local nTotRows := MlCount(cBuf)

return MsgInfo(nTotRows)  //Informa sobre 32 lineas, y lo correcto es 16.
 


Este es el txt:
Code: Select all  Expand view
3420733 02/07/2015           13,797.50              400.13              200.96           13,196.41
3423562 04/07/2015              833.00               24.16               12.13              796.71
3427777 05/07/2015            2,730.00               79.17               39.76            2,611.07
3438327 09/07/2015            5,929.00              171.94               86.36            5,670.70
3441056 11/07/2015            2,302.00               66.76               33.53            2,201.71
3443640 11/07/2015           10,824.50              313.91              157.67           10,352.92
3444982 12/07/2015            1,656.00               48.02               24.12            1,583.86
3450958 15/07/2015           34,676.46            1,005.62              505.06           33,165.78
3458989 18/07/2015            4,058.00              117.69               59.11            3,881.20
3461666 18/07/2015           16,986.00              492.60              247.40           16,246.00
3473188 23/07/2015            1,993.00               57.80               29.03            1,906.17
3475974 24/07/2015            3,500.50              101.52               50.98            3,348.00
3477974 25/07/2015            1,092.00               31.67               15.90            1,044.43
3490933 30/07/2015            8,616.00              249.87              125.49            8,240.64
3492572 31/07/2015            1,365.00               39.59               19.88            1,305.53
3493993 31/07/2015              310.00                8.99                4.51              296.50


Gracias de antemano.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2110
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Cuenta erronea de lineas en txt

Postby FranciscoA » Fri Jan 22, 2021 11:16 pm

Se me olvidó mencionar que el txt es producto de la importación de un PDF, que lo hice en: http://www.somepdf.com/
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2110
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Cuenta erronea de lineas en txt

Postby hmpaquito » Fri Jan 22, 2021 11:57 pm

Te recomiendo que abras el archivo con Notepad Plus. Alli hay un botoncito que al pulsarlo te permitirá ver los caracteres de control invisibles, que deben ser el problema.
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Cuenta erronea de lineas en txt

Postby Armando » Sat Jan 23, 2021 3:42 am

Francisco:

Tal vez hace falta definir el ancho de la línea

Code: Select all  Expand view

        nAncho := 80
    nLineas := MLCOUNT(ALLTRIM(oRsDet:Fields("DET_DES"):Value),nAncho)
 


Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Cuenta erronea de lineas en txt

Postby TecniSoftware » Sat Jan 23, 2021 3:26 pm

Prueba con oFile := TTxtFile():New( cFile )

nLines: = oFile:nTLines

Saludos
Alejandro Cebolido
Buenos Aires, Argentina
User avatar
TecniSoftware
 
Posts: 233
Joined: Fri Oct 28, 2005 6:29 pm
Location: Quilmes, Buenos Aires, Argentina

Re: Cuenta erronea de lineas en txt

Postby FranciscoA » Sat Jan 23, 2021 3:36 pm

Paquito, Armando, Alejandro.
Gracias por sus sugerencias.
Probaré todas y después comento.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2110
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Cuenta erronea de lineas en txt

Postby FranciscoA » Sat Jan 23, 2021 4:12 pm

Todas sus sugerencias funcionan.
Efectivamente, Notepad++ muestra todos los caracteres.

nTotRows:= MLCount(Alltrim(cBuf),250)

nTotRows:= oFile:nTLines

Muchas gracias.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2110
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Cuenta erronea de lineas en txt

Postby Armando » Sat Jan 23, 2021 5:57 pm

Francisco:

Excelente, una de la muchas que te debemos :) .

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 95 guests