Re: How to "Archive" a text file with multiple handles open
- From: GhostInAK <ghostinak@xxxxxxxxx>
- Date: Fri, 16 Jun 2006 17:56:12 +0000 (UTC)
Hello dwainew@xxxxxxxxx,
The design is a little flawed. My first question is.. do you own all the file handles? If so you may wish to create a single point of writing/reading which could then easily have the archive code added to it. I use a similar method for writing to multiple log locations.
While there are open file handles you can't "zero out" (erase the contents of) a file. The reason being that the other file streams are looking for data at a particular location.. if you erase the file.. these other streams have no way of knowing this and can not reset the location they are looking to read/write.
-Boo
Problem: I'd like to archive off the contents of a text file.
However, other processes may have the file open, so
MoveTo(newfilepath) can't be done, as far as I've found.
Start with a 5 MB MyLog.txt file that may be opened (reading and/or
writing) by several handles. The Final state I'm looking for is an
archive file MyLog_YYYYMMDDHHMMSS.txt with the 5 MB contents and the
original file zeroed out or with a line indicating the archive
operation.
I'm looking for a way to use CopyTo(NewFilePath) and then "zero out"
the original file....
problem is, I've found no real discussions regarding DELETING text in
a previously established file. How can you use a binarywriter or
similar class to REMOVE bytes or add null bytes. I end up with a file
of the original length.
you can't use the traditional FileInfo instantiation with the Truncate
parameter, as this causes an access violation.
Any ideas?
.
- References:
- How to "Archive" a text file with multiple handles open
- From: dwainew
- How to "Archive" a text file with multiple handles open
- Prev by Date: Re: Assigning Nullables to each other
- Next by Date: Re: Q: 1.#INF
- Previous by thread: How to "Archive" a text file with multiple handles open
- Next by thread: Input/output to parallel port?
- Index(es):
Relevant Pages
|