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-nilai daripada medan borang PDF (AcroForms) ke CSV menggunakan Aspose.PDF Form Exporter dalam .NET. Anda akan belajar cara mengumpul data bentuk yang diisi dan menulisnya keluar sebagai fail CSV standard, bersedia untuk pengimportan 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 SelectFieldSetkan 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 hilang** Penyelesaian:** Menyelesaikan medan pra-pengesahan dan mengendalikan kes nol / kosong dalam pemprosesan downstream.

Challenge: Konflik Delimiter dengan data borang** Penyelesaian:** 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