Sembolik Bağlantı (SYLK) - Symbolic Link (SYLK) - Wikipedia

Sembolik bağlantı (SYLK) bir Microsoft özellikle uygulamalar arasında veri alışverişi yapmak için kullanılan dosya biçimi elektronik tablolar. SYLK dosyalarında geleneksel olarak bir .slk sonek. Yalnızca görüntülenebilir öğelerden oluşur ANSI karakterler, diğer uygulamalar tarafından kolayca oluşturulabilir ve işlenebilir. veritabanları.

Microsoft bir SYLK belirtimi yayınlamaz. Formatın çeşitleri tarafından desteklenmektedir Multiplan, Microsoft Excel, Microsoft Works, OpenOffice.org, LibreOffice[1] ve Gnümerik. Biçim 1980'lerde tanıtıldı ve 1986'dan beri gelişmedi[2].

SYLK dosyasının yaygın olarak karşılaşılan (ve sahte) 'oluşumu', virgülle ayrılmış değer (CSV) biçimi, ilk iki karakterin SYLK dosya biçiminin ilk iki karakteriyle eşleştiği, alıntılanmamış bir ilk alan adı olan 'ID' ile kaydedilir. Microsoft Excel (en azından Office 2016 için) daha sonra, dosyanın biçimiyle ilgili olarak, "Açmaya çalıştığınız dosya, 'x.csv', dosya tarafından belirtilenden farklı bir biçimdedir gibi yanıltıcı hata mesajları verir. uzantı...".[3][4]

SYLK'nin neden olduğu bilinmektedir güvenlik bir saldırganın çalışmasına izin verdiği için keyfi kod, gizleme fırsatı sunar saldırı vektörü bir CSV dosyasının zararsız görünümlü görünümü altında ve Microsoft Excel'in son (2016) sürümlerinde varsayılan olarak hala etkindir.[2].

Sınırlamalar

SYLK, Unicode desteğine sahip değildir. Bir SYLK dosyası Unicode'u destekleyen bir uygulama (örneğin Microsoft Excel) tarafından oluşturulmuş olsa bile, SYLK dosyası mevcut sistemde kodlanacaktır. ANSI kod sayfası, Unicode'da değil. Uygulama, Unicode'da görüntülenebilen ancak mevcut sistemin kod sayfasında kod noktası olmayan karakterler içeriyorsa, bunlar SYLK dosyasında soru işaretlerine ('?') Dönüştürülecektir.

Noktalı virgül, SYLK'de alan ayırıcı olarak kabul edilir, bu nedenle veri değerlerinde çıkış karaktersiz kullanılamaz. SYLK dosyasındaki bir karakter dizesi noktalı virgül (;) içerecekse, dizenin örneğin "WIDGET ;; AXC1254" olarak görünmesi için başka bir noktalı virgül ile önek olarak eklenmelidir. MS Excel, içe aktarmada ilk noktalı virgülü kaldıracak ve veri öğesi "WIDGET; AXC1254" olarak görünecektir.

SYLK girdi dosyasının her satırı 260 karakterden uzun olmamalıdır. Aksi takdirde, Microsoft Excel bir hata mesajı verir ve fazla uzun satırı yüklemeyi atlar.

Örnek SYLK kodu

Örnek olarak, .slk uzantılı bir metin dosyasında aşağıdaki SYLK kodu:

ID; PC; Y1; X1; K "Satır 1" C; Y2; X1; K "Satır 2" C; Y3; X1; K "Toplam" C; Y1; X2; K11C; Y2; X2; K22C; Y3; X2; K33E

uygun bir e-tablo tarafından okunduğunda şu şekilde görüntülenecektir:

1. satır11
2. Satır22
Toplam33

sayısal biçimlendirme için

2 ondalık basamağın biçimlendirmesi, Sütun 2'ye uygulanır.

F; P2; C2

burada P0 Genel içindir, P1 ondalık değildir, P2 2 basamak içindir, P3 aşağıda tanımlandığı gibi 2 ondalık basamaklı $ işaretine sahiptir.

ID; PP; PGeneralP; P _ (* #, ## 0 _) ;; _ (*  - #, ## 0 _) ;; _ (* "-" _) ;; _ (@_) P; P _ (* #, ## 0.00 _) ;; _ (*  (#, ## 0.00 ) ;; _ (* "-" ?? _) ;; _ (@_) P; P _ ("$" * #, ## 0.00 _) ;; _ ("$" *  (#, ## 0.00 ) ;; _ ("$" * "-" ?? _) ;; _ (@_) C; Y1; X1; K "Satır 1" C; Y2; X1; K "Satır 2" C; Y3; X1; K "Toplam" C; Y1; X2; K11C; Y2; X2; K22C; Y3; X2; K0; ER1C2 + R2C2F; P2; C2E

uygun bir e-tablo tarafından okunduğunda şu şekilde görüntülenecektir:

1. satır11.00
2. Satır22.00
Toplam33.00

sütun genişliği için

F; W [S] [S] bir sütun grubunun genişliklerini tanımlar:

[S]
bir boşluk
< n1 >
ilk sütun
< n2 >
son sütun
< n3 >
karakter sayısı olarak sütunların genişliği

Örneğin: Bu SYLK kodlarını eklemek, sütun 1 ve 2'nin sütun genişliğini sırasıyla 20 ve 30'a ayarlayacaktır.

F; W1 1 20F; W2 2 30

hücre formatlama özellikleri

 F;   
< cl >
aşağıdaki 1 karakterli biçimlendirme kodlarından biri:
D
varsayılan
C
sürekli hücreler arası ekran
E
bilimsel üs alma
F
sabit ondalık nokta
G
genel format
$
başında $ ve 2 ondalık nokta
*
çubuk grafik, birim başına bir yıldız işareti (5, ***** olur)
< n >
basamak sayısı.
< c2 >
aşağıdaki 1 karakterli hizalama kodlarından biri:
D
varsayılan
C
merkez
G
genel (textleft, numbersright)
L
sola yaslamak
R
doğru gerekçelendirmek

Örneğin: Aşağıdaki SYLK kodu, hücre formatlama özelliklerini gösterir:

 ID; PP; PGeneral C; Y1; X1; K "Satır 1 Sola Yaslama" F; P0; FG0L C; Y2; X1; K "Satır 2 Sağa Yaslama" F; P0; FG0R C; Y3; X1; K "Toplam Merkez "F; P0; FG0C C; Y1; X2; K11 C; Y2; X2; K22 C; Y3; X2; K0; ER1C2 + R2C2 F; Y1; X2; FF2L F; Y2; X2; FF2R F; Y3 ; X2; F $ 2CF; W1 2 25 E

SYLK sözdizimi

SYLK_file :: = Record + Record :: = RecordType Alanı * yeni satır
  • İD kayıt
    • Kullanım:
      Elektronik tablo türünü ve oluşturucuyu tanımlayan bir başlık.
      Dosyadaki ilk kayıt olmalıdır.
    • Kayıt tipi:
      İD
    • Zorunlu alanlar:
      P programı
      dosya yaratıcısı
      • olası içerik oluşturucular şunları içerir:
        • MP (Çoklu Plan)
        • XL (Excel)
    • Olası alanlar:
      N
      Varsa, dosya kullanır; N tarzı hücre koruması
      Dosya yoksa; P stili hücre koruması kullanır
      E
      Varsa, NE kayıtları gereksizdir
      Yok ise, NE kayıtları gereksiz değildir
  • B kayıt
    • Kullanım:
      Elektronik tablodaki satır ve sütun sayısını belirtir.
      C ve F kayıtlarından önce gelmesi önerilir
    • Kayıt tipi:
      B
    • Zorunlu alanlar:
      X sütun
      maksimum sütun sayısını gösterir
      Y satır
      maksimum satır sayısını gösterir
  • C kayıt
    • Kullanım:
      Hücre içeriği
    • Kayıt tipi:
      C
    • Zorunlu alanlar:
      X sütunu
      sütun konumu (bir tabanlı)
    • Olası alanlar:
      Y satırı
      satır konumu (bir tabanlı). Atlanırsa, en son karşılaşılan değer kullanılır.
      E ifadesi
      hücre için ifade
      K değeri
      hücrenin değeri
      C sütunu
      sütun referansı
      R satırı
      satır referansı
      G
      paylaşılan değeri tanımlar
      D
      paylaşılan ifadeyi tanımlar
      S
      paylaşılan değere veya paylaşılan ifadeye başvuruyor
      N
      Varsa, hücre korumalı değildir.
      Kimlik kaydında yoksa ve; N varsa, hücre korunur.
      P
      Varsa hücre korunur.
      Kimlik kaydında yoksa ve; N yoksa, hücre korumalı değildir.
      H
      Varsa hücre gizlidir.
      Yoksa hücre gizli değildir.
      M ifadesi
      (X, Y) 'den (C, R)' ye matris ifadesi
      ben
      bir matrisin içinde
    • Uyumlu alanlar:
      G varsa; E bulunmamalıdır.
      G varsa; K mevcut olmalıdır.
      D mevcutsa; E mevcut olmalıdır.
      Eğer; S varsa; E,; K,; G,; D ve; M olmamalıdır.
      Eğer; S varsa; R ve; C mevcut olmalıdır. (Paylaşılan değerin / ifadenin kopyalandığı satırı ve sütunu tanımlarlar.)
      Kimlik kaydında; N mevcutsa; P mevcut olmamalıdır.
      Kimlik kaydında; N yoksa; N olmamalıdır.
      Eğer; M varsa,; E olmamalıdır.
      Eğer; I varsa; K ve; E olmamalıdır
  • P kayıt
    • Kullanım:
      Hücre biçimi
      F kayıtları varsa, onlardan önce gelir.
    • Zorunlu alanlar:
      P biçimlendirme
      Excel stili hücre biçimi belirtimi
  • F kayıt
    • Kullanım:
      Biçim
      P kayıtları varsa, onları takip edin.
    • Olası alanlar:
      X sütunu
      sütun (bir tabanlı)
      Y satırı
      satır (bir tabanlı)
      C sütunu
      sütun (bir tabanlı)
      R satırı
      satır (bir tabanlı)
      F biçimi
      Hücre / satır / sütun biçimi
      Biçimin biçimi
      ch1 basamak ch2
      ch1
      D
      varsayılan
      C
      para birimi
      E
      üs
      F
      sabit
      G
      genel
      $
      dolar
      *
      grafik
      %
      yüzde
      basamak, ondalık noktadan sonraki basamak sayısıdır
      ch2 hizalamadır
      D
      varsayılan
      C
      merkez
      G
      standart
      L
      ayrıldı
      R
      sağ
      -
      yok sayıldı
      X
      doldurmak
      D biçimi
      Varsayılan format.
      Formatın biçimi
      ch1 basamak ch2
      ch1
      C
      para birimi
      E
      üs
      F
      sabit
      G
      genel
      $
      dolar
      *
      grafik
      %
      yüzde
      basamak, ondalık noktadan sonraki basamak sayısıdır
      ch2 hizalamadır
      C
      merkez
      G
      standart
      L
      ayrıldı
      R
      sağ
      -
      yok sayıldı
      X
      doldurmak
      E
      formülleri göster
      K
      virgül göster
      W col1 col2 genişliği
      sütun genişliklerini ayarla
      N yazı tipi boyutu
      kullanılacak yazı tipi
      P endeksi
      Excel hücre biçimi, P kaydının numarası (ör. P0, genellikle P olarak bildirilen ilk P kaydı anlamına gelir; PGeneral
      S tarzı
      stil
      Aşağıdaki karakterler stilin parçası olabilir
      ben
      italik
      D
      cesur
      T
      kılavuz çizgisi üst
      L
      sol ızgara çizgisi
      B
      ızgara çizgisi altı
      R
      sağ kılavuz çizgisi
      S
      gölgeli arka plan
      H
      Varsa, satır / sütun başlıklarını gösterme
      Dosyanın tamamında yoksa satır / sütun başlıklarını göster
      G
      Varsa, varsayılan kılavuz çizgilerini gösterme
      Dosyanın tamamında yoksa, varsayılan kılavuz çizgilerini göster
    • Uyumlu alanlar:
      X,; Y,; C,; R,; D,; E,; K,; W,; P,; H veya; G'den en az biri mevcut olmalıdır.
      X veya; Y varsa, hem X hem de; Y mevcut olmalıdır. (Bu, hücre biçimini belirler.)
      Eğer; X varsa; R,; C,; E,; K,; W,; N,; H,; G olmamalıdır.
      Eğer; R mevcutsa; X,; Y,; C,; E,; K,; W,; N,; H,; G olmamalıdır. (Bu, varsayılan satır biçimini ayarlar.)
      Eğer; C varsa; X,; Y,; R,; E,; K,; W,; N,; H,; G olmamalıdır. (Bu, varsayılan sütun biçimini ayarlar.)
      Eğer; D mevcutsa; X,; Y,; R,; C bulunmamalıdır. (Bu, varsayılan elektronik tablo biçimini ayarlar.)
      Eğer; X,; Y,; R,; C mevcutsa; P ve / veya; F ve / veya; S mevcut olmalıdır.
  • Ö kayıt
    • Kullanım:
      Seçenekler
    • Olası alanlar:
      Yinelenen bir delta
      Varsa, değer yinelemesine izin verin
      Aksi takdirde, döngüsel referanslara izin verilmez.
      yineleme (maksimum yineleme sayısı)
      delta (adım testi. Daha küçükse, tamamlandı.)
      C
      En yakın önceki C kaydında tamamlama testi
      P
      sayfa korumalı
      L
      A1 modu referanslarını kullan
      L verilmiş olsa bile SYLK dosya ifadelerinde R1C1 referansları kullanılmaktadır.
      M
      Varsa, manuel yeniden hesaplamayı kullanın.
      Yoksa, otomatik yeniden hesaplamayı kullanın.
      E
      Makro sayfası.
      Bu, bir NN kaydında bir; G veya; F alanının ilk görünümünden önce görünmelidir.
      Bu, yalnızca makro işlevini kullanan ilk C kaydından önce görünmelidir.
      V değeri
      değer, seri tarih değerlerini hesaplamak için kullanılan temel tarihi gösterir
      0: 1 Ocak 1900
      4: 1 Ocak 1904
  • NU kayıt
    • Kullanım:
      dosya adı ikamesi
      NE kayıtları varsa, bunlardan önce gelmelidir.
    • Zorunlu alanlar:
      L dosya adı
      eski dosya adı
      Dosya adı
      yeni dosya adı
  • NE kayıt
    • Kullanım:
      dış bağlantı
    • Zorunlu alanlar:
      E ifadesi
      Elektronik tablodaki hedef alan
      Dosya adı
      Kaynak dosyası
      S ifadesi
      Dış sayfadaki kaynak alan
  • NN kayıt
    • Kullanım:
      İsimleri tanımlar
      NN ad kullanımından önce görünürse daha etkilidir.
    • Zorunlu alanlar:
      N adı
      isim
      E ifadesi
      adın değerini açıklayan ifade
    • Olası alanlar:
      G ch1 ch2
      komut anahtarı diğer adıyla çalıştırılabilir ad (makro)
      K ch1 ch2
      kullanılmayan komut takma adlarına sahip sıradan ad
      F
      işlev olarak kullanılabilir
    • Uyumlu alanlar:
      Eğer; G varsa, K bulunmamalıdır.
  • W kayıt
    • Kullanım:
      Pencere tanımları
  • NL kayıt
    • Kullanım:
      Dış bağlantı grafiği
  • E kayıt
    • Kullanım:
      Dosyanın sonu.
      Son kayıt olmalı.

Tarih ve saat, kayan nokta değeri olarak saklanır. Tam sayı bölümü, 1 Ocak 1900'den sonraki gün sayısıdır (O kaydı, hesaplamalar için başlangıç ​​noktası olarak 1900'ü belirten; V0 yönergesini içeriyorsa), kesir, saniyelerin 86400'e bölünmesiyle elde edilen sayıdır (60 * 60 * 24, bir günde saniye sayısı). Unix zamanına dönüştürme, 1 Ocak 1970 ve 1 Ocak 1900 (25.569 gün) arasındaki farkın çıkarılması ve ardından 86400 ile çarpılmasıyla yapılabilir; unix zamanından SYLK tarih saatine dönüştürme, değeri 86400'e bölerek ve ardından 25569 eklenerek yapılır. Hücre stilinin bir tarih biçimlendirme değerine ayarlanması gerekir, ör. P; Pdd / aa / yyyy hh: mm: ss düzgün görüntülenecek.

Excel ile açılan .slk dosya dışa aktarımlarının bir hücrede 255 karakterlik bir sınırı vardır. Bu sınır LibreOffice'de mevcut değildir.

Dış bağlantılar

  • Ayrıntılı örnekler şu adreste de bulunabilir: İşte

SYLK için sözdizimi şu adreste bulunabilir:

ve şurada:

Excel ile okuma ve kaydetmeyle ilgili sınırlar:

Referanslar

  1. ^ https://www.libreofficehelp.com/libreoffice-calc-supported-file-formats/
  2. ^ a b Stan Hegt (2019-10-30). "SYLK dosya biçimini kötüye kullanma". outflank.nl. Alındı 2019-12-14.
  3. ^ ""SYLK: Dosya biçimi geçerli değil "dosyayı açtığınızda hata mesajı". Alındı 18 Ağustos 2015.
  4. ^ "Excel CSV içe aktarma bir SYLK dosya biçimi hatası döndürüyor". Alındı 18 Ağustos 2015.