Fråga : Behöv att optimera datarengöring som är rutinmässig i VB

Den bra morgonen

I har en 20MB att leda i rör avgränsat sparar som exporterades från framsteg 9.1e.  Den innehåller ”som textbestämningar.  Mitt problem är, att någon text sätter in innehåller fodrar avbrott (CRLF), som är avsluta av rekordet marker.

I skrev också fäst kodifierar för att riva av ut dubbla citationstecken, och tar därefter bort CRLFsen som bäddas in i texten sätter in.  Förmiddag som I är glad till något att säga kodifiera works.

HOWEVER, det verkar som om, det ska taken omkring 10 timmar för att läsa spara in, någon unkowntid att bearbeta, och en andra 10 timmar som därefter antagligen skriver uppdaterad, sparar tillbaka ut.  förmiddag för

So I ser för att optimera det processaa vid oh något att säga om dagen eller två.  Jag har sökt efter bättre metoder för att hur man ska läsa och skriver men kunde inte figurera som den, out.

The understöder sparar är 20KB segmenterar av datavisningen den skulle förfalskada hjälpen för CRLFs.

Any uppskattas väldeliga.  Inte stolt förmiddag I om vad lösningen är, jag kan kasta kodifiera ut.  Om det finns långt att exportera från framsteg utan den extra CRLFsen eller ett bättre språk (även om VB är det enda tinget som vi har installerat), eller en bättre algoritm ganska än using en samling, I-förmiddagen open.

Thank dig i förskott för din hjälp. för class=" codeSnippet " för


1 för >Sub ReadChars " för prettyprint " för class= för id= " codeSnippet766107 " för >
 strPattern därefter GoTo Skip1 för strCharacters (I + 3)
      strCharacters (I + 1) = Chr$ (0)
      strCharacters (I + 2) = Chr$ (0)

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

Kretsa



'Ta bort CR/LF mellan citationstecken
i = 0
j = 0


Gör till I = intCharcount - 1

   Om strCharacters (I) = Chr$ (34) därefter
    booIsQuote = inte booIsQuote
    GoTo överhopp
    Avsluta om
   Om (strCharacters (I) = Chr$ (10) eller strCharacters (I) = Chr$ (13)) Och booIsQuote därefter
    strCharacters (I) = ””,
    Avsluta om
    
överhopp:
   i = I + 1
   
Kretsa


'Skriv samling för att spara

Fastställd outfso = CreateObject (”Scripting.FileSystemObject”)
Fastställdt outfile = outfso.createtextfile (”x:\TCB\Purchasing\08 - 09 \ ERP \ dataomvandlingen \ o_bp-inspect1.txt” som, är riktig)

i = 0
Gör till I = intCharcount - 1

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

Kretsa


outfile. Nära

Avsluta suben
<-/pre>
> för
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:
" codeBody " class= " notpretty " >0 för
" klar "

Svar : Behöv att optimera datarengöring som är rutinmässig i VB

Jag har inte försökt jag själv, men google kom upp med överflöd av alternativ.

Överträffa av lista: http://www.soft32.com/download_194850.html

Freeware- ser enkel och effektiv.

L
Andra lösningar  
 
programming4us programming4us