Subject:
|
Re: Post-processing huge [POV] text files in Delphi
|
Newsgroups:
|
lugnet.cad.dev
|
Date:
|
Sat, 7 Sep 2002 16:10:55 GMT
|
Viewed:
|
408 times
|
| |
| |
Thanks Roland!
I think that's exactly what I was looking for.
Sometimes I wish there were a dictionary or cross-reference for people that
know what a keyword is named in one programming language. Pressing F1 is a
good thing - but only when you know which word too look for... :o/
Thanks for your super-quick response!
/Tore
In lugnet.cad.dev, Roland Melkert writes:
> You could use the 'text' type and process the reading and writing line
> by line manly insteat by using tstringlist, I asume.
>
> quick code for quick copy:
>
> var infile, outfile: text;
> line: string;
>
> assignfile(infile, 'bigfile.pov');
> reset(infile);
> assignfile(outfile, 'bigfile.~pov');
> rewrite(outfile);
>
> while not eof(infile) do
> begin
> readln(infile, line);
> //do something with line
> writeln(outfile, line);
> end;
>
> closefile(infile);
> closefile(outfile);
>
> You can also look into blockread and blockwrite in combination with type
> 'file' or tfilestream for binary reads and writes. It's harder to work
> with strings then but it is much faster working with buffers.
>
> Roland
>
> Tore Eriksson wrote:
> > Very often, I have just changed a little detail in a model converted to POV
> > by L3P. Then after I run the model through L3P again, I have to manually set
> > all the modifications not handled by L3P arguments again.
> >
> > I try to make a utility program to fix this problem automatically, but there
> > is a problem.
> >
> > I have never been any good at making programs that are able to handle large
> > files. Afraid of making memory alloction mistakes and too lazy to learn
> > about it, I just the let my programs:
> > * read the file line by line
> > - edit/insert line if needed
> > - copy line into a temp file
> > * finally, if temp file is different from original file
> > - delete original file
> > - rename temp file into original file's name
> > * if more files to process then open next and so on
> >
> > I find this method quite fool-proof, but not very effective, especially when
> > processing POV files that often reach the size of 12 Mb and more. But I only
> > know how to do this in C; in Delphi I use ReadFromFile and SaveToFile that
> > are extremely easy to use but tend to fail when files are larger that 64k
> > (or was it even 32k depending on with object the file content is read into?).
> >
> >
> > Any help would be greatly appreviated.
> > /Tore
|
|
Message is in Reply To:
| | Re: Post-processing huge [POV] text files in Delphi
|
| You could use the 'text' type and process the reading and writing line by line manly insteat by using tstringlist, I asume. quick code for quick copy: var infile, outfile: text; line: string; assignfile(infile, 'bigfile.pov'); reset(infile); (...) (22 years ago, 7-Sep-02, to lugnet.cad.dev)
|
8 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|