Przenoszenie danych między CSV, JSON, YAML i XML
Dane rzadko tkwią w jednym formacie. Raport trafia jako arkusz kalkulacyjny, API chce JSON, potok wdrożeniowy oczekuje YAML, a gdzieś w piwnicy stara usługa nadal mówi XML. Większość codziennych trudności w pracy z danymi nie leży w samych danych — tkwi w tym, żeby przenieść je z kształtu, który mamy, w kształt, którego coś innego wymaga. To właśnie całe zadanie konwertera danych: wziąć ustrukturyzowany tekst w jednej notacji i wyemitować go ponownie w innej, bez gubienia sensu po drodze.
Konwertery Speedora działają w całości w twojej przeglądarce. Wklejasz, klikasz, kopiujesz wynik. Nic nie jest przesyłane, nic nie jest logowane i nic nie opuszcza twojego komputera. Dla każdego, kto kiedykolwiek wahał się przed wrzuceniem eksportu klientów na losową stronę, właśnie ten lokalny charakter jest sednem sprawy.
Do czego każdy format faktycznie się nadaje
Warto wiedzieć, dlaczego te formaty istnieją, zanim zaczniesz między nimi przeskakiwać, bo każdy z nich powstał do innego zadania.
CSV to płaska, rozdzielana przecinkami siatka, którą arkusze kalkulacyjne kochają. Jest z natury tabelaryczny: wiersze i kolumny, nic zagnieżdżonego. Otwórz go w Excelu, Arkuszach Google lub Numbers i po prostu działa. Haczyk: CSV nie zna pojęcia typów. Wartość 007 może być ciągiem, liczbą lub kodem pocztowym, a CSV ci tego nie powie.
JSON to lingua franca nowoczesnej sieci. Niemal każde API, jakie kiedykolwiek wywołasz, mówi tym językiem. JSON obsługuje zagnieżdżanie, tablice i garść prawdziwych typów (ciągi, liczby, wartości logiczne, null), co czyni go o wiele bardziej wyrazistym niż płaska tabela. Jest kompaktowy, przyjazny maszynom i obsługiwany wszędzie.
YAML to bardziej czytelny kuzyn JSON. Używa wcięć zamiast nawiasów, obsługuje komentarze i zazwyczaj jest formatem z wyboru dla plików konfiguracyjnych, Docker Compose, manifestów Kubernetes i potoków CI. Kiedy człowiek musi coś edytować ręcznie, YAML jest zazwyczaj łaskawszy dla oczu.
XML to starszy mąż stanu. Rozwlekły, pełen tagów i nadal głęboko zakorzeniony w systemach korporacyjnych, usługach SOAP, komunikatach finansowych i standardach dokumentów jak RSS. Spotkasz go rzadziej w nowych projektach, ale gdy go potrzebujesz, to naprawdę go potrzebujesz.

Gdzie konwersje faktycznie mają miejsce
Scenariusze są dość konkretne, gdy zaczniesz je dostrzegać. Powiedzmy, że marketing podaje ci arkusz z 4000 kontaktami, a API rejestracji przyjmuje tylko tablicę JSON. Eksportujesz arkusz do CSV, uruchamiasz go przez CSV do JSON i masz payload gotowy do POST. Żadnego skryptu sklejającego, żadnych pandas, żadnego czekania na inżyniera.
Albo pobierasz fragment JSON z tego samego API i chcesz wrzucić go do pliku konfiguracyjnego, który twoja usługa odczytuje przy starcie. Konwertujesz za pomocą JSON do YAML i dostajesz coś przejrzystego i z możliwością komentowania, co idealnie pasuje do twojego repozytorium. Działanie w drugą stronę też jest możliwe, gdy narzędzie przyjmuje tylko JSON, ale konfiguracja żyje w YAML.
A potem jest integracja, której nikt nie lubi: system partnera wchłaniający tylko XML. Budujesz payload w JSON, bo tak myśli twoja aplikacja, a potem konwertujesz do XML na granicy. Kształt pozostaje ten sam, zmienia się tylko składnia.
Pułapki warte znajomości
Konwersja formatu nie zawsze jest bezstratna, a udawanie inaczej prowadzi do błędów. Kilka rzeczy warto mieć w głowie:
CSV zapomina typy. Ponieważ każda komórka to tylko tekst, liczby, wartości logiczne i daty wychodzą jako ciągi, chyba że konwerter zgaduje za ciebie. Jeśli true musi być wartością logiczną, a nie słowem "true", sprawdź wynik przed wysłaniem.
YAML dba o białe znaki. Wcięcia w YAML to nie kosmetyka, to struktura. Jeden zbłąkany spacja może zmienić, do którego klucza należy wartość, a tabulatory są całkowicie zabronione. Po każdym okrężnym przejściu JSON do YAML warto rzucić okiem lub uruchomić wynik przez formater JSON, żeby potwierdzić, że struktura przeżyła.
XML i JSON nie mapują się czysto. JSON ma tablice; XML ma powtarzające się elementy. JSON nie ma nigdzie atrybutów; XML ma je wszędzie. Większość konwerterów wybiera rozsądną konwencję, ale jeśli twój XML mocno używa atrybutów, JSON, który produkuje, będzie wyglądał trochę inaczej niż ręcznie napisany JSON. To oczekiwane, a nie błąd.
Głębokość zagnieżdżenia ma znaczenie. CSV jest płaski, więc głęboko zagnieżdżony JSON nie zawsze da się spłaszczyć do kolumn bez spłaszczania kluczy (pomyśl address.city). Idąc w drugą stronę, płaski CSV staje się płaską tablicą, nigdy drzewem.

Dlaczego ważne jest przetwarzanie tylko lokalnie
Wiele danych, które będziesz chciał konwertować, nie należy do ciebie do udostępniania. Rekordy użytkowników, wewnętrzne konfiguracje, klucze API ukryte w odpowiedzi, wiersze finansowe. Wiele konwerterów online po cichu wysyła twoje wklejone dane na serwer, żeby tam wykonać pracę. Speedor tego nie robi. Logika konwersji działa w twojej karcie przeglądarki, dane nigdy nie przekraczają sieci, a zamknięcie karty to całe sprzątanie. To też szybsze, bo nie ma okrężnej drogi przesyłania, i działa offline po załadowaniu strony. Bezpłatne, bez rejestracji, bez limitu.
Najczęściej zadawane pytania
Czy moje dane są gdzieś przesyłane podczas konwersji?
Nie. Każda konwersja działa lokalnie w twojej przeglądarce za pomocą JavaScript. Twoje dane nigdy nie opuszczają urządzenia i nigdy nie są wysyłane na serwer, dlatego narzędzia działają nawet w trybie offline.
Czy mogę konwertować CSV do JSON bez pisania kodu?
Tak. Wklej CSV do konwertera, kliknij konwertuj i skopiuj wynikową tablicę JSON. Pierwszy wiersz traktowany jest jako nagłówki kolumn, które stają się kluczami każdego obiektu.
Dlaczego mój skonwertowany JSON pokazuje liczby jako ciągi?
CSV nie ma pojęcia typów danych, więc każda wartość zaczyna się jako tekst. Niektóre konwertery próbują automatycznie wykrywać liczby i wartości logiczne, ale gdy mają wątpliwości, zostawiają wartości jako ciągi, żeby nie psuć takich rzeczy jak kody pocztowe lub identyfikatory z zerami wiodącymi.
Jaka jest różnica między JSON a YAML?
Reprezentują te same rodzaje danych, ale YAML używa wcięć zamiast nawiasów klamrowych i kwadratowych, obsługuje komentarze i jest ogólnie łatwiejszy do czytania i edytowania przez ludzi. JSON jest bardziej kompaktowy i jest domyślnym formatem dla większości interfejsów API.
Czy konwersja między tymi formatami jest zawsze bezstratna?
Zazwyczaj, ale nie zawsze. JSON, YAML i XML dobrze się nawzajem odwzorowują w większości przypadków. Najtrudniejsze pary to CSV, który jest płaski i bez typów, oraz XML, który inaczej obsługuje atrybuty i powtarzające się elementy niż tablice JSON. Przy ważnych danych zawsze sprawdź wynik.
Czy konwertery działają na dużych plikach?
Bez problemu obsługują większość codziennych plików, bo praca odbywa się na twoim komputerze. Wydajność zależy od twojego urządzenia, a nie serwera, więc bardzo duże pliki są ograniczone głównie pamięcią przeglądarki.
