Немного странный. Я использую Excel для обработки некоторых данных в нескольких .txt файлах.
Когда я пытаюсь импортировать их с помощью Data
> Get External Data
> Import Text File
:
Подобно тому, как я это делал много раз в прошлом, я получаю диалоговое окно «Выбор файла», но когда я просматриваю папку, «выбирается» только пара файлов; остальные «серые»:
Там нет различий между файлами, которые я вижу, чтобы оправдать разницу. Единственная «логика» заключается в том, что «исходный» файл (назовем его 20150728 - SOURCE.TXT
) приходит по электронной почте с компьютера с Windows, а два других заблокированных файла ( 20150728 - Source Fragment 3.TXT
и 20150728 - Source Fragment 3 copy.TXT
) являются копией источника, где я удалил несколько строк, и Вторая копия полученного файла, в то время как незаблокированные начинались как Источник, где я удалил строки, а затем сделал «Сохранить как» в TextWrangler ...
Я могу обойти эту проблему, просто скопировав содержимое «серых» файлов в новый документ в TextWrangler и сохранив его, но я хотел бы понять причину такого поведения.
Выполнение file
в рассматриваемых файлах показывает, что они похожи, если не совпадают:
Mac:samples jjarava$ file 201507*txt
20150728 - Source Fragment 3.TXT: ASCII text
20150728 - Source Framgent 1.TXT: ASCII text
20150728 - Source Fragment 1.TXT: ASCII text
20150728 - Source.TXT: ASCII text, with CRLF line terminators
20150728 - Source Fragment 3 copy.TXT: ASCII text
Я немного "застрял" в том, что проблема может быть. У меня такое чувство, что это одна из тех «неясных причуд Mac», которые очень сложно объяснить.
РЕДАКТИРОВАТЬ : Согласно комментариям ниже от @ user3439894 и других, я изучил расширенные атрибуты файлов, чтобы увидеть, дает ли это какую-либо подсказку.
Вывод ls -l@
для файлов дает нам:
-rw-r--r--@ 1 jjarava staff 7652 Aug 3 13:58 20150728 - Source Fragment 3 (BAD).TXT
com.apple.FinderInfo 32
com.apple.TextEncoding 15
com.dropbox.attributes 83
-rw-r--r--@ 1 jjarava staff 6570 Aug 3 13:58 20150728 - Source Fragment 1 (Good).TXT
com.apple.FinderInfo 32
com.apple.TextEncoding 15
com.dropbox.attributes 83
-rw-r--r--@ 1 jjarava staff 6616 Aug 3 13:58 20150728 - Source Fragment 2 (Good).TXT
com.apple.FinderInfo 32
com.apple.TextEncoding 15
com.dropbox.attributes 83
-rw-r--r--@ 1 jjarava staff 21138 Aug 3 13:58 20150728 - Source (BAD).TXT
com.apple.FinderInfo 32
com.dropbox.attributes 83
Опять же , я вижу , что один из плохих файлов (источник), по- видимому отсутствует com.apple.TextEncoding
атрибут - но файл другие «не работает» действительно есть атрибут ... Только в случае , если значения различны для хороших и плохих файлов, давайте проверять:
Mac:samples jjarava$ xattr -p com.apple.TextEncoding 201507*txt
20150728 - Source Fragment 3 (BAD).TXT: UTF-8;134217984
Source Fragment 1 (Good).TXT: UTF-8;134217984
Source Fragment 2 (Good).TXT: UTF-8;134217984
xattr: 20150728 - Source (BAD).TXT: No such xattr: com.apple.TextEncoding
Так что это тоже не похоже на хитрость ...
Source
чтобы убедиться, Source 3
что в TextWrangler окончание строк было «Unix». Как вы можете видеть другие нерабочие файлыLF
file
уже показал, что, каким бы макетом он не был интересен, как он разделен? А что ls -l@
выводится для серых файлов?
20150728 - Source.TXT: ASCII text, with CRLF line terminators
. Попробуйте заменить терминаторы строки CRLF просто LF. В терминале попробуйте:tr -d '\r' < input.file > output.file