Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Символическая ссылка (SYLK) — это формат файла Microsoft, обычно используемый для обмена данными между приложениями, в частности, электронными таблицами. Файлы SYLK обычно имеют расширение slk. Состоящий только из отображаемых символов ANSI, он может быть легко создан и обработан другими приложениями, такими как базы данных. Microsoft никогда не публиковала спецификацию SYLK. Варианты формата поддерживаются Multiplan, Microsoft Excel, Microsoft Works, OpenOffice.org, LibreOffice и Gnumeric. Формат был представлен в 1980-х годах и с 1986 года не изменялся. Распространенная (и ошибочная) ситуация, когда обнаруживается файл SYLK, возникает при сохранении формата CSV с не заключенным в кавычки первым именем поля "ID", то есть первые два символа совпадают с первыми двумя символами формата файла SYLK. Microsoft Excel (по крайней мере, до Office 2016) в этом случае выдает вводящие в заблуждение сообщения об ошибках, связанные с форматом файла, например: "Файл, который вы пытаетесь открыть, 'x.csv', имеет формат, отличный от указанного расширением файла". SYLK известен проблемами безопасности, поскольку позволяет злоумышленнику выполнять произвольный код, предоставляет возможность замаскировать вектор атаки под видом безобидного файла CSV и по-прежнему включен по умолчанию в последних (2016) версиях Microsoft Excel.
Symbolic Link (SYLK) is a Microsoft file format typically used to exchange data between applications, specifically spreadsheets. SYLK files conventionally have a slk suffix. Composed of only displayable ANSI characters, it can be easily created and processed by other applications, such as databases. Microsoft has never published a SYLK specification. Variants of the format are supported by Multiplan, Microsoft Excel, Microsoft Works, OpenOffice. org, LibreOffice and Gnumeric. The format was introduced in the 1980s and has not evolved since 1986. A commonly encountered (and spurious) 'occurrence' of the SYLK file happens when a comma separated value (CSV) format is saved with an unquoted first field name of 'ID', that is the first two characters match the first two characters of the SYLK file format. Microsoft Excel (at least to Office 2016) will then emit misleading error messages relating to the format of the file, such as "The file you are trying to open, 'x. csv', is in a different format than specified by the file extension ". SYLK is known to cause security issues, as it allows an attacker to run arbitrary code, offers the opportunity to disguise the attack vector under the benign looking appearance of a CSV file, and is still enabled by default on recent (2016) versions of Microsoft Excel.
Ограничения
SYLK не поддерживает Unicode. Даже если файл SYLK создан приложением, поддерживающим Unicode (например, Microsoft Excel), файл SYLK будет закодирован в кодовой странице ANSI текущей системы, а не в Unicode. Если приложение содержит символы, которые отображаются в Unicode, но отсутствуют в кодовой странице текущей системы, они будут заменены вопросительными знаками ("?") в файле SYLK. Точка с запятой используется в SYLK в качестве разделителя полей и не может использоваться непосредственно в значениях данных. Если строка символов в файле SYLK должна содержать точку с запятой (;), перед ней необходимо добавить еще одну точку с запятой, например, "WIDGET;;AXC1254". MS Excel удалит первую точку с запятой при импорте, и элемент данных будет отображаться как "WIDGET;AXC1254". Каждая строка входного файла SYLK не должна превышать 260 символов. В противном случае Microsoft Excel выдаст сообщение об ошибке и пропустит загрузку строки, превышающей допустимую длину.
SYLK does not have support for Unicode. Even if a SYLK file is created by an application that supports Unicode (for example Microsoft Excel), the SYLK file will be encoded in the current system's ANSI code page, not in Unicode. If the application contained characters that were displayable in Unicode but have no code point in the current system's code page, they will be converted to question marks ('?') in the SYLK file. The semicolon is treated as a field separator in SYLK, so cannot be used unescaped in data values. If a character string in the SYLK file is to contain a semicolon (;) then it should be prefixed with another semicolon so the string would appear as e. g., "WIDGET;;AXC1254". MS Excel will strip the first semicolon on import and the data element will appear as "WIDGET;AXC1254". Each line of a SYLK input file must be no longer than 260 characters. Otherwise, Microsoft Excel will issue an error message and skip loading the overlong line.