Exemplo n.º 1
0
        public static void Rewrite(FileInfo file, long cutBeg, long cutEnd, long padBeg, long padEnd)
        {
            long beg = cutBeg;
            long end = VirtualDrive.FileLength(file.FullName) - cutEnd;

            BinaryReader reader = OpenReader(file);
            BinaryWriter writer = OpenWriter(new FileInfo(file + ".tmp"));

            WriteZeroBytes(writer, padBeg);
            CopyBytes(reader, writer, beg, end - beg);
            WriteZeroBytes(writer, padEnd);

            reader.Close();
            writer.Close();

            VirtualDrive.ReplaceFile(file.FullName + ".tmp", file.FullName);
        }