Я пользователь Windows, и мое приложение принимает zip-файлы.
Я понял, что когда пользователь сжимает файлы с помощью встроенного в Mac OSX компрессора zip, в извлеченном zip-архиве создается дополнительная папка с названием «__MACOSX».
Мне нужно обработать эту папку (__ MACOSX) в моем приложении. Я просто хочу знать, что находится в скрытом каталоге __MACOSX. Он пустой или в нем есть какие-то файлы? А если он содержит файлы, то сколько файлов в нем? Если есть файлы, фиксировано ли количество файлов? Какие там файлы (пустые / непустые и т. д.)? Нужна полная информация.
Это просто проверить в Mac OS, но у меня нет Mac, поэтому я не могу понять, что находится в этой папке. Я искал, но не нашел ответа.

Я заархивировал папку "Pack", содержащую следующее:
Что внутри «__MACOSX»:
Кажется, что "__MACOSX" содержит репликацию заархивированной структуры папок со скрытыми файлами, начинающимися с точки, вместо настоящих файлов. Однако не все файлы присутствуют, поэтому может быть трудно предсказать, сколько файлов (в моем тесте реальный файл Sound.m4a не имеет эквивалента .Sound.m4a).
Эти «скрытые» файлы не являются пустыми, это двоичные файлы, содержащие метаданные.
Почему бы вам просто не проигнорировать эту папку «__MACOSX» и не удалить ее, а не обрабатывать?
Чтобы добавить к ответу @Yoric, скрытые файлы написаны в формате ЯблокоДвойной, который изначально использовался для хранения дополнительных метаданных в системах Unix.
Пример (GraCoL 2013 ICC):
unzip -d swop SWOP2013_and_GRACoL2013_ICC_Profiles.zip
file swop/__MACOSX/._GRACoL2013_CRPC6.icc
# swop/__MACOSX/._GRACoL2013_CRPC6.icc: AppleDouble encoded Macintosh file
Даже не зная формата файла (задокументированного в RFC 1740), вы можете более или менее понять, о чем идет речь. В нашем случае:
$ hexdump -C swop/__MACOSX/._GRACoL2013_CRPC6.icc
00000000 00 05 16 07 00 02 00 00 4d 61 63 20 4f 53 20 58 |........Mac OS X|
00000010 20 20 20 20 20 20 20 20 00 02 00 00 00 09 00 00 | ........|
00000020 00 32 00 00 00 c2 00 00 00 02 00 00 00 f4 00 00 |.2..............|
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000050 00 00 00 00 41 54 54 52 00 00 00 00 00 00 00 f4 |....ATTR........|
00000060 00 00 00 98 00 00 00 5c 00 00 00 00 00 00 00 00 |.......\........|
00000070 00 00 00 00 00 00 00 01 00 00 00 98 00 00 00 5c |...............\|
00000080 00 00 15 63 6f 6d 2e 61 70 70 6c 65 2e 71 75 61 |...com.apple.qua|
00000090 72 61 6e 74 69 6e 65 00 71 2f 30 30 30 31 3b 35 |rantine.q/0001;5|
000000a0 32 33 39 64 33 32 37 3b 47 6f 6f 67 6c 65 5c 78 |239d327;Google\x|
000000b0 32 30 43 68 72 6f 6d 65 2e 61 70 70 3b 31 33 41 |20Chrome.app;13A|
000000c0 39 30 46 46 32 2d 34 43 45 41 2d 34 35 37 33 2d |90FF2-4CEA-4573-|
000000d0 38 37 45 32 2d 32 35 33 41 37 30 35 38 30 34 39 |87E2-253A7058049|
000000e0 44 7c 63 6f 6d 2e 67 6f 6f 67 6c 65 2e 43 68 72 |D|com.google.Chr|
000000f0 6f 6d 65 00 |ome.|
000000f4
Мы смотрим на экземпляр расширенного атрибута com.apple.quarantine, который в этом случае говорит, что файл был загружен с помощью Chrome. Ну, по крайней мере, так было для того, кто упаковал этот zip-файл.
Спасибо вам. Да, я его удаляю и не обрабатываю. :)