If your source files are contstant size you can do this reasonably. Otherwise you have a problem as a file is just sequential bits.
# source files
aaa
bbbb
cc
ddd
# concat file
aaabbbbccddd
# replace constant size 2nd file with xxxx
aaaxxxxccddd
# but if we replace it with a shorter or longer file
aaaxxxbccddd #whoops
aaaxxxxxcddd #oh dear
You may be able to do some optimisation by not re-writing the part of the file before the changes, if you have freedom over the order the data is in perhaps you can move the most frequently changed files to the end of the stream so you are often not re-writing most of the file.
If you also own the reader script you have more options open, a couple spring to mind:
- Replace file with linked list
- allow null values in the file
- Read direct from the source files
Cheers,
R.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.