Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Оновлення програмної бібліотеки






Давайте доповнимо нашу бібліотеку новою функцією, яка перевіряє, чи існує на диску файл із заданим ім'ям. Цю функцію слід викликати перед спробою відкрити файл або створити його (щоб запобігти випадковому знищенню існуючого файлу):

1. Якщо проект з попереднього розділу не зберігся, створіть новий проект командою File > New Project.

2. Якщо модуль MyLibrary.Bas не був включений в проект, клацніть правою кнопкою миші у вікні проекту і виконаєте команду Add > Module з контекстного меню.

3. У діалоговому вікні Add Module перейдіть на вкладку Existing, знайдіть файл MyLibrary.Bas і натисніть кнопку Open. Програмний модуль включається в проект.

4. Двічі клацніть на файлі MyLibrary.Bas у вікні проекту. У вікні програми, що відкрилося, вставте наступний фрагмент в секцію(Declarations):

Public Function IsFile(FileName As String) As Boolean

If Len(Dir(Filename))> 0 Then

'Файл існує

IsFile = True

Else

'Файл не існує

IsFile = False

End If

End Function

5. Збережете бібліотеку командою File > Save MyLibrary. Уся основна робота виконується в рядку

If Len(Dir(Filename))> 0 Then

У ній викликаються ще дві функції, які формують одне підсумкове значення. Функція Dir() отримує один параметр - Filename. Вона перевіряє, чи існують файли, відповідні заданому критерію (наприклад, *. txt), і повертає перший відповідний файл, якщо він існує. Наприклад, якщо в теці Мої документи існує файл FooBar.txt і змінній Filename буде присвоєне значення З: \Мої документи\FооВаг.txt, функція повертає текстовий рядок FooBar, txt. Якщо файл не існує, Dir() повертає порожній рядок. Після функції Dir() викликається функція Len(). Вона повертає довжину рядка, переданого їй як аргумент. Наприклад, функція Len(" abc") повертає значення 3, тому що рядок abc складається з трьох байтів. Оскільки Diг() повертає ім'я файлу, відповідного переданому критерію, ланцюжок Len(Dir()) еквівалентний виклику Len(" FooBar. txt"), який повертає значення 10. Нарешті, ми перевіряємо, чи повернула функція Len() позитивне число. Довжина FooBar. txt дорівнює 10; поза сумнівом, це число більше нуля, тому змінною IsFile привласнюється значення True - воно показує, що файл дійсно існує. Якщо Dir() поверне порожній рядок, функція Len() повертає 0. Це число не є позитивним, тому IsFile привласнюється значення False - відповідно, файл не існує.

Перший модуль готовий, і тепер ви можете включати його у свої проекти для виконання деяких простих завдань. Функція IsFile перевіряє, чи існує на жорсткому диску файл із заданим ім'ям. Подібну перевірку слід виконувати перед спробою відкриття файлу в програмі. Від вас вимагається лише вказати, який файл вас цікавить:

 

If IsFile(" C: \CONFIG.SYS") Then

..... дії вашої програми..

End If

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.