Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Pozzitron1337
0 / 0 / 0
Регистрация: 16.03.2019
Сообщений: 1
1

Как изменить размер файла так,чтоб удалились последние байты данных в файле используя WinAPI

16.03.2019, 16:58. Просмотров 320. Ответов 1

Есть тот же текстовый файл с текстом размером 75 байт.После вызова какой-то функции для работы с размером файла WinAPI последние байты должны удалиться и размер должен стать,к примеру 70 байт.

Были попытки использовать функцию SetEndOfFile(),но эта функция удаляла все байты данных и размер файла стал равен нулю.
C++
1
2
3
4
5
6
7
8
9
10
11
...
HANDLE test1 = CreateFile("test.txt", 
                                         GENERIC_READ | GENERIC_WRITE, 
                                         FILE_SHARE_READ | FILE_SHARE_WRITE,
                                         NULL, 
                                         OPEN_EXISTING, 
                                         FILE_FLAG_BACKUP_SEMANTICS, 
                                         NULL);
//какие-то действия для того чтоб усечь нужное количество байт;
SetEndOfFile(test1);
...
Какие ещё действия нужно сделать,чтоб усечь размер не всех байт данных?
Можно с примером кода?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2019, 16:58
Ответы с готовыми решениями:

Стереть последние байты файла
Привет всем! Допустим, я могу, открыв файл функцией OpenFile и переместив указатель файла...

Как сделать так чтобы при нажатии на клавишу L изменить байты в процессе игры
Всем привет, создаю трейнер на C# для игры, и вопрос такой, как сделать так чтобы при нажатии на...

Возможно ли просмотреть стэк, используя Stack <> так, чтобы значения из него не удалились?
Возможно ли просмотреть стэк, используя Stack &lt;&gt; так, чтобы значения из него не удалились?

Как изменить пазмер формы, чтоб изменять размер программы?
Как изменить Размер формы , чтоб изменять размер программы using System; using...

Изменить байты в файле
Привет всем, юзал гугл, яндекс не могу найти примера как изменить конкретный байт в файле....

1
Ctty
63 / 29 / 18
Регистрация: 16.03.2019
Сообщений: 84
21.03.2019, 13:51 2
Здравствуйте.
Попробуйте в такой последовательности:

1. Открываете файл с правами GENERIC_WRITE

2. Устанавливаете длину данных функцией:
BOOL SetFileValidData( HANDLE hFile, LONGLONG ValidDataLength );

3. Устанавливаете длину файла (по длине данных) функцией:
BOOL SetEndOfFile( HANDLE hFile );

4. Закрываете файл.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.03.2019, 13:51

JavaScript! Как изменить значение кнопки, так чтоб сразу не обновлялось (+код)?
смысл такой: после появления 3-его пункта и потом после нажатия next значение value кнопки next...

Подскажите, как изменить так, чтоб номера строк выводились не с нуля, а от единицы?
Часть кода с заполнением матрицы размерностью 4х6: private static void outSumma(int s) { ...

Изменить текст входящего текстового файла так, чтобы в исходящем файле не оставалось пустых строк
написать программу которая превращает текст входящего текстового файла так, чтобы в исходящем файле...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru