Cuestión : Necesitar optimizar rutina de la limpieza de los datos en VB

La buena mañana,

I tiene un archivo delimitado pipa 20MB que fue exportado del progreso 9.1e.  Contiene “como calificadores del texto.  Mi problema es que algunos campos del texto contienen la línea roturas (CRLF), que es también el extremo del expediente marker.

I escribió el código atado para pelar hacia fuera las cotizaciones dobles y después para quitar el CRLFs que se encajan en los campos del texto.  Estoy alegre decir el código works.

HOWEVER, aparece que tardará cerca de 10 horas para leer el archivo adentro, un cierto tiempo del unkown para procesar y entonces otras 10 horas para escribir probablemente el archivo actualizado se retiran.  el

So que estoy mirando para optimizar el proceso por oh dice un día o dos.  He estado buscando mejores métodos para que cómo lea y escriba pero no podría calcular archivo de out.

The segundo es un segmento 20KB de los datos que demuestran que la ayuda falsa de CRLFs.

Any sería agradecida grandemente.  No soy orgulloso sobre cuál es la solución, yo puedo rechazar el código.  Si hay manera de exportar de progreso sin el CRLFs adicional o una mejor lengua (aunque VB es la única cosa que hemos instalado) o un mejor algoritmo algo que usar un arsenal, soy open.

Thank usted por adelantado para su ayuda. class= " lineNumbers " >
1 del >


Sub codeBody ReadChars del " prettyprint " del class= del id= " codeSnippet766107 " del >
 entonces Skip1 indicado strPattern
      strCharacters (i + 1) = Chr$ (0)
      strCharacters (i + 2) = Chr$ (0)

      i = i + 2
Skip1:
    i = i + 1

Lazo



'Quitar CR/LF entre las cotizaciones
i = 0
j = 0


Hacen hasta i = el intCharcount - 1

   Si strCharacters (i) = Chr$ (34) entonces
    booIsQuote = no booIsQuote
    Salto indicado
    Terminar si
   Si (strCharacters (i) = Chr$ (10) o strCharacters (i) = Chr$ (13)) Y booIsQuote entonces
    strCharacters (i) = ““
    Terminar si
    
salto:
   i = i + 1
   
Lazo


'Escribir el arsenal al archivo

Fijar el outfso = CreateObject (“Scripting.FileSystemObject”)
Fijar outfile = outfso.createtextfile (“x:\TCB\Purchasing\08 - 09 \ ERP \ la conversión de datos \ o_bp-inspect1.txt”, verdad)

i = 0
Hacen hasta i = el intCharcount - 1

	outfile.write (strCharacters (i))
	i = i + 1

Lazo


outfile. Cierre

Submarino del extremo
class= > " claro " de 
class= > " claro " del
> del " codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
class= >0 " notpretty " del id= " codeSnippet766113 " del
class= del

Respuesta : Necesitar optimizar rutina de la limpieza de los datos en VB

No me he intentado pero el google subió con el un montón de opciones.

Tapa de la lista: http://www.soft32.com/download_194850.html

El Freeware- parece simple y eficaz.

L
Otras soluciones  
 
programming4us programming4us