Pliki CSV ([Comma Separated Values][3] są szeroko stosowane do wymiany danych między aplikacjami. Jeśli chcesz, aby te dane zostały przetłumaczone na reprezentatywne i znaczące informacje, musisz przekonwertować je na inny format. W jednym z naszych postów, widzieliśmy [jak konwertować dane CSV w Raportach przy użyciu Javy][4]. Ten artykuł poprowadzi Cię do konwersji danych CSV do raportów PDF i MS Word DOC/DOCX przy użyciu C# przy użyciu prostego szablonu.
Poniżej omówiono następujące tematy:
- [Interfejs API platformy .NET do generowania raportów][5]
- [Wygeneruj raport PDF z danych CSV][6]
- [Wygeneruj raport MS Word z danych CSV][7]
Interfejs API platformy .NET do generowania raportów
[GroupDocs.Assembly][8] zapewnia interfejs API raportowania .NET do automatyzacji generowania raportów. W tym artykule wykorzystałem ten [GroupDocs.Assembly for .NET][9] do generowania raportów z wybranych danych CSV i szablonu w formacie TXT. Obsługuje również wiele źródeł danych, takich jak JSON, XML, a także pliki MS Word, Excel i PowerPoint jako pliki danych.
Możesz pobrać instalator bibliotek DLL lub MSI z [sekcji pobierania][10] lub zainstalować interfejs API w swojej aplikacji .NET za pośrednictwem [NuGet][11].
PM> Install-Package GroupDocs.Assembly
Wygeneruj raport PDF z danych CSV w C#
Zacznijmy od przekształcenia danych oddzielonych przecinkami w nadający się do prezentacji plik PDF. Poniższe kroki pomogą Ci przekonwertować dane CSV na sformatowany raport PDF.
- Załaduj źródło danych CSV.
- Zdefiniuj szablon zgodnie z danymi CSV.
- Podaj źródło danych CSV i szablon do prostej metody generowania raportu PDF.

Dane CSV
Aby otrzymać raport w formacie PDF, użyję następujących przykładowych danych CSV różnych osób wraz z ich odpowiednimi danymi dotyczącymi wieku i daty urodzenia.
Name,Age,Birth
John Doe,32,4/1/1989 16:00
Jane Doe,29,1/31/1992 7:00
John Smith,53,3/8/1968 13:00
Szablon
Kolejnym krokiem byłoby zdefiniowanie szablonu w formacie TXT lub DOCX. Poniżej znajduje się szablon, który jest używany w tym przykładzie i umożliwia iterację listy osób wraz z ich danymi.
<<foreach \[in persons\]>>Name: <<\[Name\]>>, Age: <<\[Age\]>>, Date of Birth: <<\[Birth\]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<\[persons.Average(p => p.Age)\]>>
Kroki, aby wygenerować raport PDF z CSV w C#
Poniższe kroki prowadzą do konwersji danych CSV na raport PDF zgodnie ze zdefiniowanym szablonem przy użyciu języka C# z interfejsem .NET Reporting API.
- Zdefiniuj plik danych CSV, plik szablonu i ścieżki wyjściowego pliku PDF.
- Utwórz instancję [CsvDataSoure][12] z plikiem danych CSV i opcjami ładowania.
- Utwórz [DataSourceInfo][13] ze zdefiniowanym źródłem danych.
- Używając [DocumentAssembler][14], wywołaj metodę [AssembleDocument][15] ze zdefiniowanym plikiem szablonu, plikiem wyjściowym i DataSourceInfo, aby otrzymać raport PDF jako wynik.
Poniższy kod pokazuje, jak przekonwertować dane CSV na raport PDF w języku C#.
// Wygeneruj raport PDF z danych CSV przy użyciu szablonu TXT w języku C# z GroupDocs.Assembly API
// Zdefiniuj źródło danych, szablon i pliki raportów wyjściowych.
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.pdf";
// Załaduj źródło danych CSV
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));
// Wygeneruj raport w formacie PDF
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));
Wygeneruj raport MS Word z danych CSV w C#
Jeśli chcesz ręcznie edytować w automatycznie generowanym raporcie, możesz również uzyskać dane wyjściowe jako dokument MS Word. Proces będzie bardzo podobny do powyższego generowania raportu PDF. Poniższe kroki pomogą wygenerować raport DOC/DOCX z danych CSV:
- Załaduj dane CSV z pliku.
- Definiowanie szablonu w formacie TXT lub DOCX.
- Ustaw format dokumentu raportu wyjściowego jako DOC/DOCX.
- Wywołaj metodę [AssembleDocument][16], aby wygenerować raport MS Word DOCX z danych CSV.
Poniższy kod pokazuje, jak przekonwertować dane CSV na raport DOCX przy użyciu języka C#.
// Generuj raport Word DOCX z danych CSV przy użyciu szablonu TXT w języku C# z GroupDocs.Assembly API
// Zdefiniuj źródło danych, szablon i pliki raportów wyjściowych.
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.docx";
// Załaduj źródło danych CSV
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));
// Wygeneruj raport w formacie DOCX
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));
Uzyskaj bezpłatną licencję API
Możesz [uzyskać bezpłatną tymczasową licencję][17], aby korzystać z API bez ograniczeń ewaluacyjnych.
Wniosek
Podsumowując, nauczyłeś się konwertować dane CSV na raporty PDF i MS Word za pomocą C#. Teraz musisz mieć pewność, że zbudujesz własną aplikację do generowania raportów .NET, konwertując dane CSV do formatu PDF. Podobnie możesz generować raporty przy użyciu innych źródeł danych, takich jak JSON i XML.
Więcej informacji na temat interfejsu API można znaleźć w [documentation][18] i repozytorium [GitHub][19]. W przypadku dalszych pytań i niejasności skontaktuj się z bezpłatną pomocą techniczną na [forum][20].
Zobacz też
- [Generuj raporty z danych JSON przy użyciu C#][21]
- [Generuj raporty z danych CSV przy użyciu języka Java][22]
[1]: https://docs.fileformat.com/spreadsheet/csv/) [2]: https://blog.groupdocs.com/pl/assembly/generate-reports-from-csv-data-in-java/ [3]: https://docs.fileformat.com/spreadsheet/csv/) [4]: https://blog.groupdocs.com/pl/assembly/generate-reports-from-csv-data-in-java/ [5]: #report-generator-dotnet-api [6]: #csv-to-pdf-report-csharp [7]: #csv-to-docx-report-java [8]: https://products.groupdocs.com/assembly/java [9]: https://products.groupdocs.com/assembly/net/ [10]: https://downloads.groupdocs.com/assembly/net [11]: https://www.nuget.org/packages/groupdocs.assembly [12]: https://apireference.groupdocs.com/net/assembly/groupdocs.assembly.data/csvdatasource [13]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/datasourceinfo [14]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/documentassembler [15]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/documentassembler/methods/assembledocument/index [16]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/documentassembler/methods/assembledocument/index [17]: https://purchase.groupdocs.com/temporary-license [18]: https://docs.groupdocs.com/assembly/net/ [19]: https://github.com/groupdocs-assembly [20]: https://forum.groupdocs.com/c/assembly [21]: https://blog.groupdocs.com/pl/assembly/generate-reports-from-json-data-in-csharp/ [22]: https://blog.groupdocs.com/pl/assembly/generate-reports-from-csv-data-in-java/