Все ли текстовые, графические, звуковые и видеофайлы хранятся / передаются в виде потока байтов? - PullRequest
2 голосов
/ 25 декабря 2010

Что еще представлено как поток байтов?

Ответы [ 2 ]

5 голосов
/ 25 декабря 2010

На определенном уровне абстракции почти все хранится, представляется или передается в виде последовательности или потока байтов.

Хорошо, что может быть сохранено / передано как System.IO.Потоковый объект в .NET или аналог в Java?

Любая информация, которая может быть представлена ​​компьютером, может (теоретически) быть преобразована в последовательность байтов и сохранена / передана через байтово-ориентированный поток ввода-вывода.Вам может потребоваться написать некоторое программное обеспечение для преобразования компьютерного представления информации в последовательность байтов, которая подходит для передачи через поток байтов.Однако любое конечное представление может быть преобразовано в байты.

Единственные вещи, которые вы не можете представить и передать в виде потока байтов, - это те, которые имеют только бесконечное представление (например, полное значениеPi, или набор всех простых чисел), и те, которые не имеют цифрового представления (например, красавица или Барак Обама).


Хорошо, что может быть сохранено / передано как Система.IO.Stream объект в .NET или аналог в Java?

Я не знаю о случае .NET, но Java ObjectOutputStream работает только для классов, которые реализуют интерфейсы Serializable или Externalizable.(И в первом случае все другие классы в нетранзитивном замыкании исходного объекта также должны реализовывать Serializable.)

Некоторые системные классы не Serializable;например, Thread, Process, различные классы ввода-вывода и большинство классов, связанных с AWT / Swing.Общей темой является то, что все эти классы включают некоторый ресурс, которым управляет операционная система.

1 голос
/ 25 декабря 2010

Это может быть скорее философским вопросом, но все, что вы можете представить объективно , может быть сохранено как последовательность чисел .Байты - это только один пример, но вы можете хранить их как последовательность чисел, текстовых символов (потому что они также могут быть переведены в числа ), арахисы в таблице, что угодно.

Например, вы можете представить то же самое, что и байты, или сами шестнадцатеричные цифры, представленные в виде десятичных чисел, и символы A, B, C, D, E и F, верно?например,

#nav{color:#123ABC;}

Вы также можете Base-64 что угодно, а Base64 означает, что существует 64 возможности.Вы можете создать Base65, если хотите, и это тоже сработает.

Тогда что можно изобразить?Что вы можете думать о?Что вы можете определить рационально?Все, что можно представить, можно представить в виде потока чисел - каждый файл на наших жестких дисках один за другим в огромном потоке, концепция «папок», «файлов» и т. Д. - это просто абстракция смещений вта огромная цепочка единиц и нулей, которую мы интерпретируем как байты, целые, символы и т. д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...