Max Wanadoo
max.wanadoo at gmail.com
Tue Oct 20 17:12:19 CDT 2009
What if the input line wont fit into memory? max On 20/10/2009, Stuart McLachlan <stuart at lexacorp.com.pg> wrote: > 200 megabytes tirivial. > > I just knocked this up in PowerBasic (this is the complete program!): > > #COMPILE EXE > #DIM ALL > FUNCTION PBMAIN () AS LONG > LOCAL strFile AS STRING > LOCAL lngSTart AS LONG > LOCAL strData AS STRING > strFile = "ML_Data.mdb" > lngStart = TIMER > OPEN strFile FOR BINARY AS #1 > GET$ #1, LOF(1), strData > CLOSE #1 > REPLACE "A" WITH "B" IN strData > OPEN strfile & "fixed" FOR BINARY as#1 > PUT$ #1, strData > CLOSE #1 > MSGBOX "It took " & STR$(TIMER - lngstart) & " seconds" > END FUNCTION > > It compiles to an 11KB executable with no dependencies. > > It took 18 seconds to process ML_Data.mdb which is 774MB in size. Most of > that time was > taken in reading and writing the file to/from memory. > > > -- > Stuart > > > On 20 Oct 2009 at 15:53, jwcolby wrote: > >> It is my guess that Regex will be too slow. This will be a file with >> about 100 characters average >> per line, 2 million lines. Doing this in one big read MIGHT be possible >> (and I will try) but >> reading in 200 million bytes all at once could cause issues. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> Jack and Pat wrote: >> > John, >> > >> > I did a google search to find this link. I'm not a C# person, but >> > thought >> > I'd pass this on >> > >> > http://dotnetperls.com/regex-replace-1 >> > >> > -----Original Message----- >> > From: dba-vb-bounces at databaseadvisors.com >> > [mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of jwcolby >> > Sent: Tuesday, October 20, 2009 11:45 AM >> > To: VBA >> > Subject: [dba-VB] C# replace a special character >> > >> > I have a file which contains a sprinkling of a special character - >> > decimal >> > 26, hex 1A (the SUB >> > character). This special character in the CSV file output to Accuzip >> > causes >> > Accuzip to hiccup. In >> > order to get on with my life I need to pre-process the files to get rid >> > of >> > this special character. >> > Because of the size of these files (hundreds of mbytes) I need to do a >> > readline / replace / >> > writeline kind of thing. I think I need to use the >> > stringbuilder.replace >> > but I do not know how to >> > specify replacing this hex 1A with something else. The something else >> > would >> > ideally be nothing >> > (empty string) but can be any valid alpha character (A, B etc). >> > >> > Can anyone help me with this replace part of the problem. C# syntax >> > please. >> > >> _______________________________________________ >> dba-VB mailing list >> dba-VB at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/dba-vb >> http://www.databaseadvisors.com >> > > > _______________________________________________ > dba-VB mailing list > dba-VB at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/dba-vb > http://www.databaseadvisors.com > >