Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
5
Добавлен:
16.02.2016
Размер:
1.34 Кб
Скачать
Консольний додаток CatFile.exe, що виконує конкатенацію 2-х файлів
(додавання вмісту другого файлу в кінець першого). Параметри
передають в командному рядку: CatFile.exe [path]file1 [path]file2.
Загальний алгоритм
1. Отримати параметри командного рядка.
2. Оскільки у file1 буде виконуватися запис, то зняти можливий
атрибут "тільки для читання".
3. Відкрити file1 і переставити файловий покажчик в кінець файла
4. Відкрити file2.
5. Виконувати послідовне читання з file2 в буфер та запис з буфера
в file1.
6. Закрити файли.
Очевидно, що під час виконання операцій читання/запису найбільш
зручною кількістю байтів для обміну з дисковою підсистемою буде число,
кратне одиниці розподілу дискового простору (кластера). Отже, і розмір
буфера в програмі треба визначати таким що дорівнює або кратним
розміру кластера. Але цей розмір заздалегідь невідомий і до того ж може
розрізнятися для різних томів. Можна визначити в секції неініціалізованих
даних дуже великий буфер, а потім, після одержання розміру кластера,
використовувати лише його частину. Але в цій програмі взагалі ніяких
буферів під файлові операції не резервується, а необхідна пам'ять буде
отримана динамічно за допомогою виклику VirtualAlloc після визначення
розміру кластера того диска, на якому розташовано файл, до якого буде
виконуватися запис.

Соседние файлы в папке CatFile
  • #
    16.02.20161.23 Кб3CatFile.inc
  • #
    16.02.20163.29 Кб3CatFile.obj
  • #
    16.02.20161.38 Кб3CatFile.rap
  • #
    16.02.20162.3 Кб4CatFile.rc
  • #
    16.02.2016960 б3CatFile.res
  • #
    16.02.20161.34 Кб5CatFile.txt
  • #
    16.02.20161 Кб4file1.txt
  • #
    16.02.20161 Кб4file2.txt