Chcę utworzyć plik CSV za pomocą Perla i napisać do niego trochę danych. Czy istnieje jakiś sposób, aby to zrobić?Jak utworzyć plik CSV za pomocą Perla?
Odpowiedz
Można użyć Class:CSV.
use Class::CSV;
my $csv = Class::CSV->new(
fields => [qw/userid username/]
);
$csv->add_line([2063, 'testuser']);
$csv->add_line({
userid => 2064,
username => 'testuser2'
});
$csv->print();
# 2063,testuser
# 2064,testuser2
Edit: Aby uzyskać więcej bibliotek, można search CPAN.
Zazwyczaj używamy Text::CSV_XS
(co wyżej wymieniony Class::CSV
opiera się na)
UPDATE: Komentatorzy poniżej sugerują również, używając Text::CSV
który będzie ładować Text::CSV_XS
lub, jeśli to nie jest ogłaszany, spadnie z powrotem na Text::CSV_PP
że nie ma zależności XS
i może być łatwiejszy w instalacji.
Istnieje więcej niż jeden sposób, aby to zrobić.
- DBD::CSV - Użyj SQL do odczytywania i zapisywania plików CSV.
- Text::CSV - Twórz i parsuj pliki CSV po linii. Jest to prawie złoty standard obsługi CSV.
- - Zapewnia filtr CSV dla komponentu POE komponentu POE.
- Data::Tabular::Dumper::CSV - Zrzuć tabelę bezpośrednio do pliku CSV (obiekty z tym samym interfejsem mogą zostać zrzucone do plików XML lub MS Excel).
Istnieje również wiele innych na CPAN.
Oczywiście, można zignorować to wszystko i po prostu użyć pętli sprzężenia i druk:
my @table = (
[ 'a', 'b', 'c'],
[ 1, 2, 3 ],
[ 2, 4, 6 ],
);
for my $row (@table) {
print join(',', @$row), "\n";
}
Wystarczy uruchomić skrypt i przekierować dane wyjściowe do pliku, Bang! gotowe. Możesz też zwariować i uzyskać uchwyt pliku i wydrukować go bezpośrednio do pliku.
Ale wtedy nie będziesz obsługiwać pól wielowierszowych, ani przecinków wbudowanych, ani żadnej z wielu innych osobliwości, które mogą pojawić się w tym zadaniu przetwarzania danych. Uważaj więc z tym podejściem.
Moje zalecenia:
- Jeśli budowania aplikacji POE użyć POE :: Filter.
- Jeśli jesteś potworem SQL i DBI i marzenie w SQL, lub może trzeba zastąpić CSV z prawdziwej bazy danych połączenia, użyj DBD :: SQL.
- Jeśli masz prostych danych i zaabsorbowana poszukiwaniem cruddy skrypt jednorazowe do formatu niektóre dane do arkusza kalkulacyjnego do strawienia, wydrukować i dołączyć do użytku - to zrobić bez kodu z oczekiwanej długości życia więcej niż 2 godziny.
- Jeśli chcesz chcesz zrzucić partię danych do postaci CSV lub XML, użyj Data :: Tabular :: Dumper :: CSV.
- Jeśli piszesz coś, co musi być stabilne, łatwe w utrzymaniu i szybkie, i potrzebujesz maksymalnej kontroli dla wejścia i wyjścia, użyj Text :: CSV. (Zauważ, że POE :: Filter :: CSV, Data :: Tabular :: Dumper :: CSV i DBD :: CSV wszystkie używają Text :: CSV lub Text :: CSV_XS jak do przetwarzania back-end).
- 1. Jak mogę pobrać plik za pomocą Perla?
- 2. Jak odczytać plik CSV za pomocą iOS
- 3. Jak utworzyć plik .jar za pomocą terminala
- 4. Jak mogę zaimportować plik CSV za pomocą zadania rake?
- 5. Jak pobrać utworzony plik csv za pomocą Google Apps Script?
- 6. Jak wydrukować plik CSV za pomocą PowerShell bez linii "#TYPE"?
- 7. Jak utworzyć plik csv ze zmiennej łańcuchowej za pomocą edytora strumieniowego w Vb.Net?
- 8. Tensorflow utworzyć plik tfrecords z csv
- 9. Tworzenie pakietów za pomocą Perla
- 10. Wykreślanie za pomocą pliku CSV
- 11. Jak utworzyć nowy plik Excel za pomocą JXL?
- 12. Jak utworzyć i wypełnić plik ZIP za pomocą ASP.NET?
- 13. Jak utworzyć plik DB w sqlite3 za pomocą pliku .schema
- 14. Jak utworzyć samorozkładalny plik wykonywalny za pomocą programu WinRAR?
- 15. Jak utworzyć plik .env do przetestowania za pomocą Laravel Dusk
- 16. Analizowanie wideo AVI za pomocą Perla
- 17. Jak utworzyć plik CSV z Core Data (Swift)
- 18. Jak narysować wielokolorowy plik CSV?
- 19. Jak mogę sprawdzić rozszerzenie pliku za pomocą Perla?
- 20. Jak pobierać dane CSV za pomocą ActionController :: Live z MongoDB?
- 21. Jak utworzyć samodzielny exe za pomocą AutoHotkey?
- 22. Przetwarzanie CSV za pomocą ats atsna
- 23. Force Pobierz plik CSV
- 24. Jak odtwarzać plik wave lub plik dźwiękowy za pomocą VBA
- 25. Jak wygenerować plik PNG za pomocą C#?
- 26. Jak zaszyfrować plik zip za pomocą zip4j
- 27. Jak utworzyć wykres wywołań statycznych dla Perla?
- 28. Jak mogę sprawdzić, czy plik istnieje na serwerze zdalnym za pomocą Perla?
- 29. Jak przekonwertować obiekt do pliku CSV za pomocą JavaScript?
- 30. Android - Wygeneruj plik CSV z wartości tabeli
To jest najlepsza opcja. Text :: CSV_XS jest wysoce zoptymalizowany i w pełni funkcjonalny z płynnym interfejsem API. Używamy go wszędzie. Autor jest również w moich oczach najbardziej responsywny na wszystkie CPAN, jest dumny z modułu i zapewnia najwyższe wsparcie. Text :: CSV_PP to także świetny sposób, jeśli nie możesz skompilować do _XS, świetnie, jeśli potrzebujesz go później. Właściwa rzecz może się wydarzyć w dzisiejszych czasach, jeśli po prostu użyjesz Text :: CSV –
Uzgodniono z tym ostatnim zdaniem: Po prostu użyj Text :: CSV i załaduje Text :: CSV_XS, jeśli jest dostępny lub wraca do Text :: CSV_PP, jeśli system nie ma zainstalowanej wersji XS. –
@szabgab Czy możesz podać przykład utworzenia pliku CSV z tekstem :: CSV w odpowiedzi? Czytam dokumentację i wydaje się ona bardzo skupiona na analizie CSV, niezbyt jasna, jak ją utworzyć. –