powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / FSO & binary file
8 сообщений из 8, страница 1 из 1
FSO & binary file
    #34762974
Arcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно почему во многих местах пишут что FileSystemObject не может работать с бинарными файлами (например http://www.freevbcode.com/ShowCode.asp?ID=752)

Однако я сделал тесты, прочитав JPG и EXE файлы через FSO, а потом записав их тоже через FSO.
Все отработало нормально - входной и выходной файлы всегда были одинаковыми...

Код примерно такой:

set objFSO=Server.CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(strSourceFile)

'read
Set objTextStream = objFSO.OpenTextFile(strPath, 1, False)
s = objTextStream.Read(objFile.Size)

'write
Set objTextStream = objFSO.OpenTextFile(strDestFile, 2, True)
Call objTextStream.Write(s)
objTextStream.Close
...
Рейтинг: 0 / 0
FSO & binary file
    #34763131
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что текстовые файлы содержат управляющие символы (в первую очередь "переход на следующую строку") И эти управляющие символы могут различаться в зависимости от того в какой системе этот текстовый файл сделан. А FSO пытается все текстовые файлы привести при чтении к единому стандарту. А при записи в новый файл этот общий стандарт сохранить.

ArcanОднако я сделал тесты, прочитав JPG и EXE файлы через FSO, а потом записав их тоже через FSO.
Все отработало нормально - входной и выходной файлы всегда были одинаковыми...Просто повезло
...
Рейтинг: 0 / 0
FSO & binary file
    #34763170
Arcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlПотому что текстовые файлы содержат управляющие символы (в первую очередь "переход на следующую строку") И эти управляющие символы могут различаться в зависимости от того в какой системе этот текстовый файл сделан.


И часто вам приходилось работать в системе, где перевод строки не 13,10 ?
...
Рейтинг: 0 / 0
FSO & binary file
    #34763174
Arcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owlтекстовые файлы содержат управляющие символы (в первую очередь "переход на следующую строку")

Разве это не обычные байты? :)
...
Рейтинг: 0 / 0
FSO & binary file
    #34764226
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArcanИнтересно почему во многих местах пишут что FileSystemObject не может работать с бинарными файлами

Ну, вообще-то нормальная работа с бинарными файлами подразумевает еще возможность читать/писать нужное кол-во байт с указанной позиции, а не только весь целиком...
...
Рейтинг: 0 / 0
FSO & binary file
    #34764809
Arcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFНу, вообще-то нормальная работа с бинарными файлами подразумевает еще возможность читать/писать нужное кол-во байт с указанной позиции, а не только весь целиком...

Это да, но если нужно целиком, то в чем проблема-то?
...
Рейтинг: 0 / 0
FSO & binary file
    #34765111
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arcan AndrFНу, вообще-то нормальная работа с бинарными файлами подразумевает еще возможность читать/писать нужное кол-во байт с указанной позиции, а не только весь целиком...

Это да, но если нужно целиком, то в чем проблема-то?

Проблема в целом та, что Microsoft как разработчик FSO, сам предупреждает, что FSO не поддерживает бинарные файлы:

...The FSO model, contained in the Scripting type library (Scrrun.dll), supports the creation and manipulation of text files through the TextStream object; however, the FSO model does not support binary files . To manipulate binary files, use the FileOpen Function with the Binary keyword....

А раз так, то это будет использовaние FSO не по его назначению с непредказуемыми, вообще говоря, результатами и, что самое главное, в принципе неприемлемо в официальных проектах. Это как строить дома не по чертежам. Дом может и будет стоять, но где-то когда-то и упадет. Вы что, хотите взять на себя подобную ответственность. Камикадзе? Есть же FileOpen.
...
Рейтинг: 0 / 0
FSO & binary file
    #34765775
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arcan White OwlПотому что текстовые файлы содержат управляющие символы (в первую очередь "переход на следующую строку") И эти управляющие символы могут различаться в зависимости от того в какой системе этот текстовый файл сделан.
И часто вам приходилось работать в системе, где перевод строки не 13,10 ?Ежедневно работаю, а что?
Кроме переводов строки есть еще такая фигня как юникодные и не юникодные текстовые файлы, FSO умеет приводить их к общему знаменателю. Попробуй прочитай jpg в режиме расшифровки юникода.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / FSO & binary file
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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