Форум программистов, компьютерный форум, киберфорум
Emiliarge
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  

C++/CLI (C++.NET). F.A.Q. Коллекция полезных исходников, трюков и хаков

Запись от Emiliarge размещена 17.07.2014 в 20:59
Показов 1636 Комментарии 0

[SIZE="4"]Управление файлами, папками, дисками. Пространство имен System::IO. Основные приемы

[/SIZE]

Классы для управления файлами, папками и дисками (применяемые, напр., для создания, удаления,

копирования папок и файлов, чтения и записи файлов) в основном сосредоточены в нэймспэйсе

System::IO
Его нам придеться включить в файл исходного кода своего приложения:
[CPP]using namespace System;
using namespace ..........;
using namespace System::IO;[/CPP]

[B][SIZE="3"]Файлы[/SIZE][/B]

[SPOILER=Читаем и пишем текстовый файл]

Читаем
[CPP]StreamReader ^sr = gcnew StreamReader("D:\\Demo.txt");
MessageBox::Show(sr->ReadToEnd());
sr->Close();
delete sr;[/CPP]

Пишем
[CPP]StreamWriter ^sw = gcnew StreamWriter("D:\\Demo.txt");
sw->WriteLine("Рыба");
sw->Write("Рыбка...");
sw->Write("Рыбина\nРыбешка");
sw->Close();
delete sw;[/CPP]
Внимание! Сохранять файлы в корень C: на Vista, 7, 8 можно только при запуске от имени одмина!!!

Читаем (альтернатива)
[CPP]MessageBox::Show(File::ReadAllText("D:\\Demo.txt"));[/CPP]

Пишем (альтернатива)
[CPP]File::WriteAllText("D:\\Demo.txt", "Рыба");[/CPP]

[/SPOILER]

[SPOILER=Копируем файл]

[CPP]File::Copy("D:\\Откуда.txt", "E:\\Куда.txt", true);[/CPP]
[CPP]File::Copy("D:\\Откуда.txt", "E:\\Куда.txt"); // Не копировать если такой файл уже есть

[/CPP]

[/SPOILER]

[SPOILER=Удаляем файл]

[CPP]File::Delete("D:\\Кого_удалять_будем.txt");[/CPP]

[/SPOILER]

[SPOILER=Проверяем есть ли файл]

[CPP]if (File::Exists("D:\\Кто_там_есть.txt")) {
MessageBox::Show("Есть");
} else {
MessageBox::Show("Нет");
}[/CPP]

[/SPOILER]

[B][SIZE="3"]Папки[/SIZE][/B]

[SPOILER=Создаем папку]

[CPP]Directory::CreateDirectory("D:\\Папка\\");[/CPP]

[/SPOILER]

[SPOILER=Перемещаем папку]

[CPP]Directory::Move("D:\\Откуда\\", "D:\\Куда");[/CPP]

[/SPOILER]

[SPOILER=Удаляем папку]

[CPP]Directory::Delete("D:\\Приговоренная_к_смерти\\", true);[/CPP]

Для пустой папки:
[CPP]Directory::Delete("D:\\Приговоренная_к_смерти\\");[/CPP]

[/SPOILER]

[SPOILER=Проверяем есть ли папка]

[CPP]if (Directory::Exists("D:\\Кто_там_есть\\")) {
MessageBox::Show("Есть");
} else {
MessageBox::Show("Нет");
}[/CPP]

[/SPOILER]

[B][SIZE="3"]Диски[/SIZE][/B]

[SPOILER=Узнаем буквы, метки (имена) и объем свободного места на всех дисках]

[CPP]array<DriveInfo^>^ drives = DriveInfo::GetDrives();
for each (DriveInfo^ d in drives) {
MessageBox::Show("Имя диска: " + d->Name);
if (d->IsReady) {
MessageBox::Show("Метка диска: " + d->VolumeLabel);
MessageBox::Show("Свободное место на диске: " + d->AvailableFreeSpace + " байт");
} else {
MessageBox::Show("Диск " + d->Name + " недоступен");
}
}[/CPP]

[/SPOILER]
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 0
Комментарии
 
Новые блоги и статьи
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано. . . .
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru