Tablora

Tablora · Biblioteka

Zachowaj przecinek w jednej komórce CSV

Przecinek w polu CSV w cudzysłowie, jak w "Red, blue", należy do wartości. Przed pobraniem sprawdź, czy analizator odczytuje go jako jedną komórkę.

Przecinki, które należą do wartości

Opisy, adresy i nazwy firm często zawierają przecinki. W pliku rozdzielanym przecinkami taka wartość musi być ujęta w cudzysłów, żeby przecinek nie został odczytany jako granica pola. Program, który dzieli każdą linię przy każdym przecinku, pomija te cudzysłowy i zamienia rekord z dwiema kolumnami w trzy komórki, przesuwając każdą dalszą wartość o jedną kolumnę w prawo.

Analizator stosuje regułę cudzysłowów CSV. Przecinek w polu w cudzysłowie zostaje w komórce, a same cudzysłowy są traktowane jako składnia, a nie część wartości.

Odczyt Mira i Red, blue

Przykład na stronie ma nagłówek name,note i rekord Mira,"Red, blue", a separatorem pól jest przecinek. Analiza daje 2 wiersze i 2 kolumny, a wiersz 2, kolumna 2 zawiera Red, blue, bez otaczających cudzysłowów i z przecinkiem wewnątrz wartości.

Drugie pole nagłówka, note, pokrywa się z Red, blue, więc rekord ma dokładnie szerokość nagłówka, a Wiersze o innej szerokości pokazuje 0.

Sprawdzanie pola w cudzysłowie

Spacja przed otwierającym cudzysłowem

Ręcznie edytowany CSV często ma spację po przecinku: Mira, "Red, blue". Według reguły CSV cudzysłów otwiera pole tylko wtedy, gdy jest jego pierwszym znakiem, więc spacja przed nim czyni z cudzysłowu nieoczekiwany znak. Analizator odrzuca tekst komunikatem Sprawdź wprowadzone wartości i spróbuj ponownie, zamiast zgadywać. Usuń w kopii spację między przecinkiem a otwierającym cudzysłowem i oblicz ponownie.

Cudzysłów, który nigdy nie zostaje zamknięty, działa tak samo na wszystkie kolejne linie, więc jeśli błąd się utrzymuje, poszukaj brakującego cudzysłowu zamykającego.

Przecinki w eksportach z aplikacji

Eksport CSV w aplikacji Tablora ujmuje w cudzysłów każdą komórkę zawierającą przecinek, cudzysłów lub podział wiersza, więc opis taki jak Red, blue zostaje w jednej komórce, gdy plik zostanie otwarty w innym programie.

Dane wejściowe

Tekst tabeli
name,note Mira,"Red, blue"
Separator pól
,

Wyniki

Wiersze
2
Kolumny
2
namenote
MiraRed, blue
Wiersze o innej szerokości
0