Использование одних и тех же файлов в разных файловых системах - PullRequest
0 голосов
/ 07 сентября 2011

Предположим, у вас есть программа на C ++, которая генерирует данные для сохранения на диске. Вы сохраняете его в своей файловой системе Windows Vista. Можете ли вы использовать его непосредственно в другой ОС с другой файловой системой (например, Mac OSX)?

Ответы [ 4 ]

0 голосов
/ 07 сентября 2011

Конечно, вы можете, учитывая, что ваша операционная система имеет драйверы для чтения обеих файловых систем.

fopen или эквивалентные вызовы полностью абстрагированы, так что вам не нужно беспокоиться о том, откуда они приходят. Данные будут прочитаны одинаково.

0 голосов
/ 07 сентября 2011

Единственная потенциальная проблема, о которой я думаю, - это разные форматы маркеров конца строки: \ n в UNIX, \ r \ n в Windows.Я не уверен, что Mac OSX использует (как система Unix она должна использовать \ n, но если я правильно помню, старые Mac OS использовали \ r).Конечно, легко написать конвертеры между форматами.

0 голосов
/ 07 сентября 2011

Это зависит. Двоичные данные будут отображаться одинаково во всех основных операционных системах (где байт равен 8 битам; это не обязательно верно для встроенных систем).

Файлы, записанные в текстовом режиме, могут не «работать» на всех платформах «из коробки» из-за соглашений о новой строке (Windows использует \r\n для новой строки, Unix-подобных систем \n) и проблем с кодировкой символов.

0 голосов
/ 07 сентября 2011

да.если вы можете получить его в другой системе или иметь видимость от одного к другому.

Файловая система не должна изменять содержимое файла.

...