Oddeľovač patrí k formátu
CSV zvyčajne oddeľuje polia čiarkami, TSV tabulátormi. Rozdiel je zásadný, keď samotná hodnota obsahuje čiarku, tabulátor, úvodzovku alebo koniec riadka. RFC 4180 opisuje bežnú podobu CSV: pole s čiarkou môže byť v dvojitých úvodzovkách, úvodzovka v poli sa zdvojí. TSV nemá rovnaké správanie v každom programe, preto záleží na očakávaní príjemcu. Nástroje MultiVerto najprv rozpoznajú bunky a potom zapíšu nový oddeľovač; nenahrádzajú naslepo interpunkciu v surovom texte. Všetky riadky musia mať rovnaký počet buniek. Nezamieňajte viditeľnú medzeru s tabulátorom.
Sledujte citované pole
Vyskúšajte dva riadky: položka,poznamka a potom pero,"červené, modré". Čiarka v poznámke je obsah, nie tretí stĺpec. Po prevode CSV na TSV oddeľuje tabulátor názov od poznámky a pero od textu červené, modré; vnútorná čiarka zostane obyčajným znakom. Zapisovač môže vonkajšie úvodzovky vypustiť, pretože čiarka neoddeľuje bunky TSV. Ak by pole obsahovalo tabulátor alebo nový riadok, výstup by ho musel chrániť. Výsledok si zobrazte v editore, ktorý ukazuje tabulátory; na webovej stránke môžu vyzerať podobne ako medzery.
- CSV: pero,"červené, modré"
- dve bunky: pero | červené, modré
- TSV: pero [tab] červené, modré
Najprv zistite cieľový program
CSV zvoľte, keď partner výslovne žiada čiarky a pozná pravidlá citovania. TSV sa môže hodiť pri mnohých čiarkach v obsahu, ale vložené tabulátory sú stále citlivé. Ak cieľ potrebuje štruktúrované záznamy, prevod CSV na JSON pomôže pozrieť hodnoty s názvami stĺpcov. Typy sa však nezachovajú automaticky; veľa importov číta bunky ako text. Tabuľkový program môže zmeniť úvodné nuly, dlhé identifikátory alebo reťazce podobné dátumom. Zmena oddeľovača tomu nezabráni. Skontrolujte nastavenia importu a porovnajte vzorku s originálom.
Pozor na vzorce v cudzích bunkách
CSV aj TSV sú údaje, no tabuľkový program môže bunku začínajúcu určitými znakmi vyhodnotiť ako vzorec. Export hodnôt od iných ľudí je preto samostatná bezpečnostná otázka. Tento konvertor mení oddeľovače a úvodzovky; neočisťuje bunky pre tabuľkový program a nerobí stiahnutý súbor bezpečným. Ak tabuľka obsahuje cudzie vstupy, použite ochrany cieľového importu a pravidlá exportu svojej aplikácie. Výmena čiarky za tabulátor neodstráni nebezpečný znak na začiatku bunky. Pri citlivom súbore overte, ktorý nástroj ho otvorí a či zachová doslovný text každej hodnoty.
Kontrolujte spätný prevod
Pôvodný súbor si nechajte. Reprezentatívnu vzorku preveďte do TSV a potom späť do CSV; porovnajte rozpoznané bunky, nie nutne rovnaké bajty. Neškodné úvodzovky či konce riadkov sa môžu líšiť. Skontrolujte hlavičky, počet riadkov, prázdne bunky, vložené oddeľovače a zalomenia. Pri ďalšom prevode na JSON pozrite, ktorý riadok sa stal kľúčmi a či číselne vyzerajúce hodnoty ostali reťazcami. Identifikátor s úvodnou nulou nie je číslo určené na zaokrúhlenie. Začnite ukážkou nižšie a tie isté problematické riadky otestujte v cieľovom programe ešte pred spracovaním celej tabuľky.
Okrem oddeľovača si dohodnite aj kódovanie znakov. Ak program číta iné kódovanie než zapisovač, diakritika sa môže pokaziť, hoci stĺpce zostanú správne. Pri importe tiež pozrite, či príjemca očakáva hlavičku a ako interpretuje prázdnu bunku oproti chýbajúcemu stĺpcu. Prevod medzi CSV a TSV tieto pravidlá automaticky neurčí. Malý testovací súbor s diakritikou, prázdnou hodnotou a citovanou čiarkou odhalí viac problémov než skúška s jednoduchými číslami.