IRONSOFTWAREHOME
GELIŞTIRICI GÜNCELLEMELERI

C# Directory.GetFiles (Nasıl Çalışır: Geliştiriciler İçin Bir Kılavuz)

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Jacob Mellor
Updated: 22 Haziran 2025

C# out parametresi. Bu işlevselliği IronPDF ile eşleştirerek geliştiriciler ölçekli PDF iş akışlarını otomatikleştirebilir. Örneğin, bir klasördeki tüm PDF dosyalarını bulmak için Directory.GetFiles kullanabilir, ardından birleştirme, ek açıklama ekleme veya rapor oluşturma gibi görevler için IronPDF kullanarak toplu olarak işleyebilirsiniz. Bu kombinasyon, özellikle dosya sistemindeki birçok dosya ile çalışırken operasyonları kolaylaştırır.

IronPDF Nedir?

IronPDF, geliştiricilere PDF dosyaları ile sorunsuz çalışmak için araçlar sunan güçlü bir .NET kütüphanesidir. IronPDF ile PDF'leri oluşturabilir, düzenleyebilir, birleştirebilir, bölebilir ve basit, sezgisel yöntemler kullanarak düzenleyebilirsiniz. HTML'den PDF'ye dönüştürme, gelişmiş stil ayarlama ve meta veri işleme gibi güçlü özellikler içerir. .NET geliştiricileri için PDF işleme gerektiren uygulamalarda, IronPDF iş akışlarını hızlandıran ve verimliliği artıran değeri eşsiz bir araçtır.

Başlarken

Installing IronPDF

NuGet Paket Kurulumu

Başlamak için, projeye NuGet üzerinden IronPDF ekleyin:

  1. Projenizi Visual Studio'da açın.
  2. Araçlar menüsüne gidin ve NuGet Paket Yöneticisi > Çözüm İçin NuGet Paketlerini Yönet seçeneğini seçin.
  3. NuGet paket yöneticisinde IronPDF'yi arayın.

C# Directory.GetFiles (Nasıl Çalışır: Geliştiriciler İçin Bir Kılavuz): Şekil 1

  1. IronPDF'nin en son sürümünü yükleyin.

Alternatif olarak, NuGet Paket Yöneticisi Konsolu kullanabilirsiniz:

PM > Install-Package IronPdf

Basics of Directory.GetFiles in C#

Directory.GetFiles yöntemi, System.IO ad alanının bir parçasıdır ve bir dosya sisteminden dosya adlarını almak için kullanılır. Bu yöntem, Directory sınıfının genel, statik bir string üyesidir ve dosya yollarına erişimi basitleştirir. Örneğin:

string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");

Bu parça, geçerli dizindeki tüm PDF dosyalarını alır. Bu yöntemi IronPDF ile birleştirerek, birden fazla dosyayı eşzamanlı olarak işlemek için otomatik çözümler oluşturabilirsiniz. Ayrıca, uzantıları veya isimleri temel alan bir filtre uygulamak için bir string modeli olarak tanımlanan belirtilen bir arama modeli uygulayabilirsiniz.

Dosya kurtarma mantığınızı daha da ince ayarlayarak arama alt dizinlerini dahil etmek gibi arama seçeneklerini belirleyebilirsiniz:

string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf", SearchOption.AllDirectories);

Bu, iç içe geçmiş klasörlerdeki dosyaların da dahil edilmesini sağlar, her dosyanın mutlak yolunu alır ve yaklaşımı çeşitli senaryolar için uyarlanabilir hale getirir.

Pratik Kullanım Durumları

Bir Dizinden PDF Dosyalarını Toplama ve İşleme

Örnek: İşleme İçin Tüm PDF Dosyalarını Yükleme

Directory.GetFiles kullanarak, bir dizindeki tüm PDF dosyalarını geçebilir ve IronPDF ile işleyebilirsiniz:

string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
foreach (string file in pdfFiles)
{
    // Load the PDF with IronPDF
    var pdf = PdfDocument.FromFile(file);
    Console.WriteLine($"Processing file: {Path.GetFileName(file)}");
}

C# Directory.GetFiles (Nasıl Çalışır: Geliştiriciler İçin Bir Kılavuz): Şekil 2

Bu örnek, işlemek için bir dizinden birden fazla PDF yüklemeyi gösterir. Yüklendikten sonra, metin çıkarma, not ekleme veya içeriklerine dayalı yeni PDF'ler oluşturma gibi çeşitli işlemler gerçekleştirebilirsiniz.

Arama Modelleri Kullanarak Dosyaları Filtreleme

Örnek: İsim veya Tarihe Göre PDF'leri Seçme

Directory.GetFiles ile birlikte LINQ kullanarak, oluşturulma veya değişiklik tarihi gibi kriterlere göre dosyaları filtreleyebilirsiniz:

string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
var recentFiles = pdfFiles.Where(file => File.GetLastWriteTime(file) > DateTime.Now.AddDays(-7));
foreach (string file in recentFiles)
{
    Console.WriteLine($"Recent file: {Path.GetFileName(file)}");
}

C# Directory.GetFiles (Nasıl Çalışır: Geliştiriciler İçin Bir Kılavuz): Şekil 3

Bu yaklaşım, sadece ilgili dosyaların işlenmesini sağlar, zaman ve hesaplama kaynaklarını tasarruf eder. Örneğin, bu yöntemi sadece geçen hafta içinde oluşturulan son faturaları veya raporları işlemek için kullanabilirsiniz.

IronPDF ve Directory.GetFiles ile Toplu İşlemler

Örnek: Birden Fazla PDF'yi Eklemek

Bir dizinden birden fazla PDF'yi tek bir dosyada birleştirebilirsiniz:

string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
var pdfAppend = new PdfDocument(200, 200);
foreach (string file in pdfFiles)
{
    var pdf = PdfDocument.FromFile(file);
    pdfAppend.AppendPdf(pdf);
}
pdfAppend.SaveAs("LargePdf.pdf");
Console.WriteLine("PDFs Appended successfully!");

C# Directory.GetFiles (Nasıl Çalışır: Geliştiriciler İçin Bir Kılavuz): Şekil 4

Bu yaklaşım, konsolide raporlar oluşturmak, birden fazla belgeyi arşivlemek veya sunumlar hazırlamak için özellikle kullanışlıdır. Bu süreci otomatikleştirerek, büyük dosya koleksiyonlarını kolaylıkla yönetebilirsiniz.

Adım Adım Uygulama

Proje Kurulumu

Kod Parçası: IronPDF'nin Başlatılması ve PDF Dosyaları ile Çalışma

IronPDF'nin Directory.GetFiles ile nasıl kullanılarak PDF belgelerini yükleyip işleyebileceğinizi gösteren kod:

using IronPdf;
using System;
using System.IO;

class Program
{
    static void Main()
    {
        // Retrieve all PDF file paths from the specified directory
        string[] pdfFiles = Directory.GetFiles("C:\\Users\\kyess\\Documents\\PDFs", "*.pdf");

        // Initialize a PdfDocument
        var pdfAppend = new PdfDocument(200, 200);

        // Create a text annotation to add to each PDF
        TextAnnotation annotation = new TextAnnotation(0)
        {
            Contents = "Processed by IronPDF",
            X = 50,
            Y = 50,
        };

        // Iterate over each file path, load, annotate, and save
        foreach (string file in pdfFiles)
        {
            var pdf = PdfDocument.FromFile(file);
            pdf.Annotations.Add(annotation);
            pdf.SaveAs(file);
        }
    }
}

Konsol Çıkışı

C# Directory.GetFiles (Nasıl Çalışır: Geliştiriciler İçin Bir Kılavuz): Şekil 5

Açıklama

Bu kod, IronPDF'yi C#'ta kullanarak belirtilen bir dizindeki tüm PDF dosyalarına bir metin açıklaması eklemeyi gösterir. Program, sağlanan klasörden tüm PDF dosya yollarını almak için Directory.GetFiles yöntemini kullanarak başlar; bu yöntem dizini belirlemek için bir string yoluna dayanır ve dosya uzantısına göre filtreleme yapmayı destekler, ".pdf" uzantısına sahip tüm PDF dosyalarının yollarını içeren bir string dosya adları dizisi döndürür.

Sonra, kod 200x200 boyutlarında bir PdfDocument nesnesi (pdfAppend) başlatır, ancak bu spesifik örnek direkt olarak döngüde kullanılmaz. Ardından, (50, 50) koordinatlarında "IronPDF Tarafından İşlendi" metni olan bir TextAnnotation oluşturur. Bu açıklama her PDF dosyasına eklenecektir.

Foreach döngüsünde, program pdfFiles dizisindeki her bir dosya yolunda yinelemeler yapar. Her dosya için, PDF'yi PdfDocument.FromFile(file) kullanarak yükler, önceden oluşturulan açıklamayı PDF'nin Annotations koleksiyonuna ekler ve ardından güncellenmiş PDF'yi pdf.SaveAs(file) kullanarak mutlak yoluna geri kaydeder.

Bu süreç, belirtilen dizindeki her PDF'nin aynı açıklamayı almasını ve açıklamanın dahil edilerek kaydedilmesini sağlar.

Performans İpuçları ve En İyi Uygulamalar

Directory.GetFiles ile Dosya Almayı Optimize Etmek

Büyük dizinlerde daha iyi performans için Directory.EnumerateFiles gibi asenkron yöntemleri kullanın.

Çok Sayıda Dosyayı Etkin Bir Şekilde Yönetmek

Bellek tüketimini azaltmak için dosyaları daha küçük gruplar halinde işleyin:

foreach (var batch in pdfFiles.Batch(10))
{
    foreach (string file in batch)
    {
        var pdf = PdfDocument.FromFile(file);
        // Process PDF
    }
}

Dosya İşleme ve PDF Üretiminde Hata Yönetimi

İstisnaları ele almak için dosya işlemeyi bir try-catch bloğuna sarın:

try
{
    var pdf = PdfDocument.FromFile(file);
    // Process PDF
}
catch (Exception ex)
{
    Console.WriteLine($"Error processing {file}: {ex.Message}");
}

Sonuç

Directory.GetFiles gücünü IronPDF ile birleştirmek, geliştiricilerin PDF dosyalarını verimli bir şekilde yönetmelerine ve işlemelerine olanak tanır. Bu yaklaşımla, toplu işleme, birleştirme, filtreleme ve PDF'leri dönüştürme gibi görevleri sorunsuz hale getirerek manuel çabaları önemli ölçüde azaltır ve verimliliği arttırır. IronPDF'nin gelişmiş özelliklerini kullanarak, başlık ekleme, meta veri ekleme ve stil oluşturma gibi profesyonel PDF belgeleri oluşturabilir ve gereksinimlerinize uygun şekilde yüksek kaliteli belgeler üretebilirsiniz.

Bu kılavuzda, IronPDF ile PDF'leri almak ve işlemek için Directory.GetFiles kullanmayı nasıl keşfettiğimizi inceledik. Bir projeyi kurmaktan pratik kullanım örnekleri uygulamaya kadar, gerçek dünya senaryolarına uygulanabilecek temel teknikleri ele aldık. İster belge iş akışlarını otomatikleştirmeye çalışıyor olun ister .NET uygulamalarınızın işlevselliğini geliştiriyor olun, bu kombinasyon sağlam ve ölçeklenebilir bir çözüm sunar.

IronPDF'ye daha derinlemesine dalmaya ve gelişmiş özellikleri keşfetmeye hazır olduğunuzda, resmi belgelere göz atmayı düşünün, böylece kütüphaneyi kendi projelerinizde test edebilirsiniz.

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Teknoloji Direktörü

Jacob Mellor, Iron Software'de Baş Teknoloji Yöneticisidir ve C# PDF teknolojisinde öncü bir mühendisdir. Iron Software'ın ana kod tabanının ilk geliştiricisi olarak, CEO Cameron Rimington ile birlikte şirketin ürün mimarisini 50'den fazla kişilik bir şirkete dönüştürmüştür ve NASA, Tesla ve dünya genelindeki devlet kurumlarına hizmet etmektedir.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez