Bagaimana untuk mengeksport PDF Form Field Values ke CSV dalam .NET

Bagaimana untuk mengeksport PDF Form Field Values ke CSV dalam .NET

Artikel ini menunjukkan bagaimana untuk mengeksport nilai daripada Perkhidmatan PDF Lapangan bentuk (AcroForms) untuk Perhimpunan CSV menggunakan Aspose.PDF Form Exporter dalam .NET. anda akan belajar untuk mengumpul data borang yang diisi dan menulisnya keluar sebagai fail CSV standard, bersedia untuk import atau analisis.

Masalah dunia sebenar

Mengekstrak data secara manual daripada borang PDF yang diisi ke dalam skrip adalah membosankan dan berisiko.Perniagaan sering perlu mengumpulkan data medan dari banyak bentuk ke fail CSV terstruktur untuk melaporkan, mengimport, atau automatik.

Gambaran keseluruhan penyelesaian

Aspose.PDF Form Exporter untuk .NET membolehkan pengeksportan automatik nilai medan borang dari mana-mana PDF ke fail CSV yang boleh disesuaikan, memudahkan pengumpulan data untuk tinjauan, pendaftaran, atau aliran kerja pematuhan.

Prerequisites

  • Visual Studio 2019 atau seterusnya
  • .NET 6.0 atau lebih baru
  • Aspose.PDF untuk .NET dipasang melalui NuGet
PM> Install-Package Aspose.PDF

Pelaksanaan langkah demi langkah

Langkah 1: Instal dan Konfigur Aspose.PDF

Menambah ruang nama yang diperlukan:

using Aspose.Pdf.Plugins;
using System.IO;

Langkah 2: Siapkan borang PDF

Tentukan laluan ke PDF yang diisi dan output CSV yang dikehendaki:

string inputPdfPath = @"C:\Samples\filled_form.pdf";
string outputCsvPath = @"C:\Samples\form_data.csv";

Langkah 3: Mengesetkan opsyen eksport (Select Fields, Delimiter)

Anda boleh mengeksport semua medan atau menentukan nama medan dengan SelectField. Setkan delimiter disesuaikan jika perlu (default ialah comma):

// Export all form fields:
var selectAllFields = new SelectField(); // (leave empty for all fields)
char delimiter = ',';

var exportOptions = new FormExporterValuesToCsvOptions(selectAllFields, delimiter);
exportOptions.AddInput(new FileDataSource(inputPdfPath));
exportOptions.AddOutput(new FileDataSource(outputCsvPath));

// To export only certain fields:
var selectFields = new SelectField { PartialName = "Field1" };
var exportOptions = new FormExporterValuesToCsvOptions(selectFields, delimiter);

Langkah 4: Melaksanakan proses eksport

Gunakan yang FormExporter Plugin untuk memproses eksport:

var plugin = new FormExporter();
ResultContainer result = plugin.Process(exportOptions);

Langkah 5: Mengesahkan CSV yang dieksport

Baca CSV dan semak kandungan:

string[] csvLines = File.ReadAllLines(outputCsvPath);
foreach (var line in csvLines)
{
    Console.WriteLine(line);
}

Langkah 6 : Menguruskan kesilapan

try
{
    ResultContainer result = plugin.Process(exportOptions);
    Console.WriteLine("Form data exported to CSV successfully.");
}
catch (Exception ex)
{
    Console.WriteLine($"Export failed: {ex.Message}");
}

Contoh Pelaksanaan Lengkap

using Aspose.Pdf.Plugins;
using System;
using System.IO;

class Program
{
    static void Main()
    {
        string inputPdfPath = @"C:\Samples\filled_form.pdf";
        string outputCsvPath = @"C:\Samples\form_data.csv";
        var selectAllFields = new SelectField();
        char delimiter = ',';

        var exportOptions = new FormExporterValuesToCsvOptions(selectAllFields, delimiter);
        exportOptions.AddInput(new FileDataSource(inputPdfPath));
        exportOptions.AddOutput(new FileDataSource(outputCsvPath));

        var plugin = new FormExporter();
        try
        {
            ResultContainer result = plugin.Process(exportOptions);
            Console.WriteLine("Exported form data to CSV.");
            string[] csvLines = File.ReadAllLines(outputCsvPath);
            foreach (var line in csvLines)
            {
                Console.WriteLine(line);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Export failed: {ex.Message}");
        }
    }
}

Penggunaan Kasus dan Permohonan

  • Penyelidikan data agregasi daripada beratus-ratus borang yang diisi
  • Pendaftaran atau pengeksportan data pesanan untuk import ke CRM/ERP
  • Laporan pematuhan atau audit

Tantangan dan Penyelesaian Bersama

Challenge: Jenis medan campuran atau nilai yang hilangPenyelesaian: Menyelesaikan medan pra-pengesahan dan mengendalikan kes nol / kosong dalam pemprosesan downstream.

Challenge: Konflik Delimiter dengan data borangPenyelesaian: Tetapkan delimiter yang berbeza (contohnya, tab atau paip) jika nilai medan anda mengandungi commas.

prestasi dan amalan terbaik

  • Batch proses PDF dalam loop untuk eksport skala besar
  • Gunakan pemilihan medan eksplisit untuk set data standard
  • Menyelamatkan CSV yang dieksport untuk pengendalian yang selamat

Conclusion

Aspose.PDF Form Exporter untuk .NET menyegarkan pengekstrakan data daripada borang PDF ke CSV, menjadikan kaji selidik, pendaftaran, atau pemprosesan data pematuhan lebih cepat dan lebih boleh dipercayai untuk penyelesaian .Net anda.

 Melayu