Форум программистов, компьютерный форум CyberForum.ru

Фрагментирование файла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Cannot open include file: 'stream.h': No such file or directory http://www.cyberforum.ru/cpp/thread191083.html
Для использования функций ввода/вывода cin/cout как я понимаю необходимо подключени библиотеки stream.h ? Но Visual Studio 2008 ругается - fatal error C1083: Cannot open include file: 'stream.h': No such file or directory
C++ Организация меню и создание функции Доброго времени суток! Я написал два кода 1 .Ввести строку текста. При наличии в строке трех плюсов подряд(+++) заменяю на один #include <string> #include <iostream> int main() { string str; int p; while (str.empty()|| str.size()<=5) { http://www.cyberforum.ru/cpp/thread190991.html
Вопрос по знаку ; Реакция программы с применением этого знака и без него C++
#include "stdafx.h" #include <conio.h> int main() { int fahr; for(fahr=0; fahr <= 300; fahr= fahr + 20) printf("%4d %6.1f\n",fahr,(5.0/9.0)*(fahr-32.0)); _getch();
Заполнение структуры из файла в С++ C++
как в С++ возможно осуществить заполнение массива структур из файла, где информация разделена ";"???
C++ Реализовать нормальный алгоритм Маркова: ошибка http://www.cyberforum.ru/cpp/thread190641.html
У меня странная ошибка, не могу понять в чем дело... #include<iostream> #include<cstring> #include<windows.h> #include<tchar.h> #include<string.h> //#include <string> using namespace std; class Alg_Mark
C++ Подскажите команды... Есть такая команда, которая выводит на экран всю строку, скажите, как она называется. Мне нужно, ну... вводишь какую нибудь команду, и запускается нужное приложение, подскажите, как это сделать. :scratch: :wall: подробнее

Показать сообщение отдельно
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,304
16.11.2010, 00:03     Фрагментирование файла
Так-то можно попробовать реализовать в качестве упражнения, но где это принесёт реальную пользу- неизвестно.

Короче, если бы мне надо было сделать край, чтобы можно было удалять из файла блоки по 512 байт без какой-либо ощутимой потери времени, я бы реализовал это так: перегнал файл в строку, разбил её на куски по 512 байт (позаботился уж чтобы в последнем было 512, раз уж так надо,) а потом соединил их между собой однонаправленным списком.

Так, теперь удаление какого-либо куска из СТРОКИ можно реализовать без проблем. Изучаем списки.

Так, работа с файлом свелась бы к работе с массивом символов типа unsigned char. Редактирование и прочее. Непросто, особенно если в разных участках памяти строка, но реализуемо всё же.

А потом понадобилось бы реализовать код (или отдельно экзешник), который по окончании работы со строкой перегонял бы её в файл-результат. Вот тут бы время терялось. Но! Коль скоро работа со строкой уже закончена (редактирование, вырезание или чего там) то потеря времени уже некритично было бы.
 
Текущее время: 06:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru