powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Binary File
3 сообщений из 3, страница 1 из 1
Binary File
    #33711790
Bolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Объясните plz где ошибка?
Читаю из файла данные в переменную (файл например состоит из нулей)
00 00 00 00)
Записываю эту переменную в новый файл (создается программно)
получаю в новом файле 08 00 00 00, а ожидается индентичность файлов.
Вообще то изначальная задача - удалить из файла 3 первых байта
и добавить 3 нуля в конец.

Dim MyFile
Dim FileName As String
Dim usr As String * 1

MyFile = FreeFile
FileName = "C:\test.bin"
usr = ""
stroka = ""
Open (FileName) For Binary As #1
Do While EOF(1)
stroka = stroka & usr
Loop
Close #1

FileName = "c:\test_cure.bin"
Open (FileName) For Binary As #1
Put #1, 1, stroka
Close #1
...
Рейтинг: 0 / 0
Binary File
    #33712404
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
08 00 00 00 - это:
Visual Basic ReferenceПри записи переменной Variant подтипа VarType 8 (String) инструкция Put сначала записывает 2 байта, указывающие VarType, потом 2 байта, указывающие длину строки, а затем содержимое строки.

Эта стока "stroka = stroka & usr" никогда не выполнялась.

Правильно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    Dim stroka As String
    Open ("C:\test.bin") For Binary As # 1 
    stroka = String$(LOF( 1 ),  0 )
    Get # 1 ,  1 , stroka
    Close # 1 
    
    Open ("c:\test_cure.bin") For Binary As # 1 
    Put # 1 ,  1 , stroka
    Close # 1 
...
Рейтинг: 0 / 0
Binary File
    #33714402
Bolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Binary File
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]