Пример: простое последовательное копирование файла
Пример: простое последовательное копирование файла
В следующих разделах приведены примеры коротких программ, реализующих простое последовательное копирование содержимого файла тремя различными способами:
1. С использованием библиотеки С.
2. С использованием Windows.
3. С использованием вспомогательной функции Windows — CopyFile.
Кроме того, что эти примеры дают возможность сопоставить между собой различные модели программирования, они также демонстрируют возможности и ограничения, присущие библиотеке С и Windows. Альтернативные варианты реализации усилят программу, увеличивая ее производительность и повышая гибкость.
Последовательная обработка файлов является простейшей, наиболее распространенной и самой важной из возможностей, обеспечиваемых любой операционной системой, и почти в каждой большой программе хотя бы несколько файлов обязательно подвергаются этому виду обработки. Поэтому простая программа обработки файлов предоставляет прекрасную возможность ознакомиться с Windows и принятыми в ней соглашениями.
Копирование файлов, нередко осуществляемое совместно с обновлением их содержимого, и слияние отсортированных файлов являются распространенными формами последовательной обработки файлов. Примерами других приложений, осуществляющих последовательный доступ к файлам, могут служить компиляторы и инструментальные средства, предназначенные для обработки текста.
Несмотря на концептуальную простоту последовательной обработки файлов, эффективная реализация этого процесса, обеспечивающая оптимальную скорость его выполнения, может оказаться нелегкой задачей. Для этого может потребоваться использование перекрывающегося ввода/вывода, отображения файлов, потоков и других дополнительных методов.
Само по себе копирование файлов не представляет особого интереса, однако сравнение программ не только позволит вам быстро оценить, чем отличаются друг от друга различные системы, но и послужит хорошим предлогом для знакомства с Windows. В последующих примерах реализуется ограниченный вариант одной из команд UNIX — cp, осуществляющей копирование одного файла в другой и требующей задания имен файлов в командной строке. В приведенных программах организована лишь простейшая проверка ошибок, которые могут возникать на стадии выполнения, а существующие файлы просто перезаписываются. Эти и другие недостатки будут учтены в последующих Windows-реализациях этой и других программ. Примечание. Реализация программы для UNIX находится на Web-сайте книги.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Пример: копирование нескольких файлов на стандартное устройство вывода
Пример: копирование нескольких файлов на стандартное устройство вывода В программе 2.3 иллюстрируется использование стандартных устройств ввода/вывода, а также демонстрируется, как улучшить контроль ошибок и усовершенствовать взаимодействие с пользователем. Эта
Пример: простое управление задачами
Пример: простое управление задачами Оболочки UNIX предоставляют команды, позволяющие выполнять процессы в фоновом режиме и получать их текущее состояние. В этом разделе разрабатывается простой "процессор задач" ("job shell") с аналогичным набором команд, перечень которых
25.3.2. Последовательное чтение записей
25.3.2. Последовательное чтение записей С помощью функций dpiterinit() и dpiternext() приложения могут производить итерации по всем ключам в базе данных. Ключи не возвращаются в каком-то определенном порядке[180], а базу данных не нужно модифицировать во время итераций, производимых
Пример конфигурационного файла зоны
Пример конфигурационного файла зоны В листинге 18.2 приведен пример простого конфигурационного файла зоны. Этот файл начинается с имени зоны (threeroomco.com) и раздела, в котором определяются параметры домена по умолчанию. Эти параметры детально рассматриваются ниже. За этим
8.1.7. Пример файла конфигурации /etc/xinetd
8.1.7. Пример файла конфигурации /etc/xinetd Теперь, как и обещал, привожу пример файла конфигурации (см. листинг 8.5). В этом листинге перечислены наиболее часто используемые сервисы с оптимальными параметрами (атрибутами). Конечно же, вам предстоит решить: какие сервисы вы будете
10.4.1. Простое резервное копирование по сети
10.4.1. Простое резервное копирование по сети Простейший способ сохранить каталог со своими данными — это перекинуть его по сети на другой компьютер. Утилита scp (Secure Copy) позволяет копировать каталоги в защищенном зашифрованном виде не только в пределах локальной сети, но и
10.7. Копирование файла
10.7. Копирование файла ПроблемаТребуется скопировать файл, причем так, чтобы эта операция была переносимой, т.е. без использования зависящего от ОС программного интерфейса.РешениеИспользуйте файловые потоки С++, определенные в <fstream>, для копирования одного потока в
Пример A-6. copy-cd: Копирование компакт-дисков с данными
Пример A-6. copy-cd: Копирование компакт-дисков с данными #!/bin/bash# copy-cd.sh: copying a data CDCDROM=/dev/cdrom # устройство CD ROMOF=/home/bozo/projects/cdimage.iso # промежуточный файл# /xxxx/xxxxxxx/ измените для своей системы.BLOCKSIZE=2048SPEED=2 # Можно задать более высокую
Пример. Копирование объектов
Пример. Копирование объектов Получить две копии детали (рис. 11.3). Рис. 11.3. Копирование объектовЗапустите команду COPY, вызвав ее из падающего меню Modify ? Сору или щелчком на пиктограмме Сору на панели инструментов Modify. Ответьте на запросы:_COPYSelect objects: – укажите точку 1Select objects:
Пример REG-файла
Пример REG-файла Рассмотрим содержимое одного из файлов реестра на примере части REG-файла раздела HKEY_CURRENT_USERControl PanelMouse. Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERControl
4.2.3. Копирование, переименование и перемещение файла или папки
4.2.3. Копирование, переименование и перемещение файла или папки Для копирования файла (группы файлов) или папки (группы файлов) нужно выполнить следующие действия:1. Выделите файлы — можно выделить один файл или каталог — для этого просто щелкните по нему. Для выделения