Страница: 1 |
Вопрос: Запись файла в бинарном режиме | Добавлено: 25.12.05 00:39 |
Автор вопроса: ![]() |
Всем доброго времени суток!
Столкнулся тут с незадачей (давненько не работал с файлами) как в бинарном режиме записать данные в файл, затерев существующее? Заранее благодярю. |
Ответы | Всего ответов: 14 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client Вопросов: 236 Ответов: 8362 |
Профиль | Цитата | #1 | Добавлено: 25.12.05 06:04 |
Open file$ for binary as #n
Get... Put... |
Номер ответа: 2 Автор ответа: ![]() ![]() Вопросов: 24 Ответов: 109 |
Профиль | Цитата | #2 | Добавлено: 25.12.05 08:59 |
Это было очень подробно ![]() |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #3 | Добавлено: 25.12.05 11:10 |
SetEndOfFile
Но для этого прийдется открыть файл на АПИ... Перед вызовом функции... |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 25.12.05 11:12 |
сорри, не туда ![]() dim nf as integer nf = freefile open lpFile for binary access write as nf put nf, LOF(nf), lpData ' put nf, , lpData ' можно воспользоваться seek и не указывать куда писать... close nf |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #5 | Добавлено: 25.12.05 16:55 |
Перед открытием файла напиши
On error resume next
Kill File |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 46 Ответов: 848 |
Профиль | Цитата | #6 | Добавлено: 25.12.05 22:38 |
Dim F() As Byte ... ... Open "C:\Моё.файло" For Binary As 1 Put 1, , F Close 1 |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 46 Ответов: 848 |
Профиль | Цитата | #7 | Добавлено: 25.12.05 22:39 |
off: А слово Close почему-то не подсвечивается. |
Номер ответа: 8 Автор ответа: ![]() ![]() Вопросов: 0 Ответов: 1066 |
Профиль | Цитата | #8 | Добавлено: 25.12.05 23:22 |
Перед открытием файла напиши
On error resume next Для чего? |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 334781088 Вопросов: 108 Ответов: 2822 |
Профиль | Цитата | #9 | Добавлено: 26.12.05 10:31 |
Можно и не килять его, просто сначала его открыть для Output и тут же закрыть. А потом открывать как бинари. Непрактично, зато без АПИ ![]() |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 204447456 Вопросов: 180 Ответов: 4229 |
Web-сайт: Профиль | Цитата | #10 | Добавлено: 27.12.05 06:38 |
HOOLIGAN,
чтобы не ругался если он уже открыт монопольно. Например ФАР-ом. |
Номер ответа: 11 Автор ответа: ![]() ![]() Вопросов: 0 Ответов: 1066 |
Профиль | Цитата | #11 | Добавлено: 27.12.05 08:52 |
Понятно. Я просто привык проверять после открытия на INVALID_HANDLE_VALUE и не доводить дело до ошибки, а тут похоже никак. |
Номер ответа: 12 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 204447456 Вопросов: 180 Ответов: 4229 |
Web-сайт: Профиль | Цитата | #12 | Добавлено: 27.12.05 16:11 |
HOOLIGAN,
Что ж ты хотел, PUT он тебе даёт совсестно с командой Open, а обрезать никак, хоть ты тресни. Тут уж либо открывать файл через API чтобы использовать SetEndOfFile либо таким вот извращённым макаром через Kill. |
Номер ответа: 13 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #13 | Добавлено: 28.12.05 00:26 |
Перед открытием файла напиши
On error resume next Для чего? Вообще-то, я написал On error resume next
Kill File On error resume next нужен для того, чтобы если файл не существует, не было проблем. Вообще по-хорошему я должен был приписать в конец своего кода On Error Goto 0 для порядку, но забыл. |
Номер ответа: 14 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #14 | Добавлено: 28.12.05 00:29 |
А вообще мне больше понравилась версия LOL:
Open File For Output as FN
Close FN Open File For Binary as FN 'пишем Close FN |
Страница: 1 |
|