C++ Kullanarak Excel Dosyalarında Metni Sütunlara Bölme

Microsoft Excel, boşluk, virgül veya diğer karakterler gibi ayırıcılar kullanılarak metnin birden çok sütuna bölünmesine izin verir. Bu özellik, bir veritabanı tablosundan dışa aktarılan virgülle ayrılmış verilerin tablo formuna dönüştürülmesi gibi senaryolarda yardımcı olabilir. Bu amaçla, bu makale size C++ kullanarak Excel dosyalarındaki metni sütunlara nasıl ayıracağınızı öğretecektir.

Excel Dosyalarında Metni Sütunlara Bölmek için C++ API

Excel dosyalarında metni sütunlara bölmek için Aspose.Cells for C++ API’sini kullanacağız. Microsoft Excel’in yüklenmesini gerektirmeden Excel dosyaları oluşturmanıza, okumanıza ve değiştirmenize izin veren yerel bir C++ kitaplığıdır. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.

PM> Install-Package Aspose.Cells.Cpp

C++ Kullanarak Excel Dosyalarında Metni Sütunlara Bölme

Aşağıdakiler, Excel dosyalarındaki metni sütunlara bölme adımlarıdır.

Aşağıdaki örnek kod, C++ kullanılarak Excel dosyalarında metnin sütunlara nasıl bölüneceğini gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Çıktı excel dosyasının yolu
StringPtr outputFile = outDir->StringAppend(new String("TextToColumns.xlsx"));

// IWorkbook sınıfının bir örneğini oluşturun
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();

// İlk çalışma sayfasına erişin
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Örnek veri ekle
intrusive_ptr<String> str = new String("John Teal");
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(str);
str = new String("Peter Graham");
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(str);
str = new String("Brady Cortez");
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(str);
str = new String("Mack Nick");
worksheet->GetICells()->GetObjectByIndex(new String("A4"))->PutValue(str);
str = new String("Hsu Lee");
worksheet->GetICells()->GetObjectByIndex(new String("A5"))->PutValue(str);

// ITxtLoadOptions sınıfının bir örneğini oluşturun
intrusive_ptr<ITxtLoadOptions> options = Factory::CreateITxtLoadOptions();

// Metni ayırmak için ayırıcıyı belirtin
options->SetSeparator(' ');

// Metni Sütunlara Böl
worksheet->GetICells()->TextToColumns(0, 0, 5, options);

// Çıktı excel dosyasını kaydedin
workbook->Save(outputFile);
Metnin iki sütuna bölündüğünü gösteren çıktı Excel dosyasının görüntüsü

Metnin iki sütuna bölündüğünü gösteren çıktı Excel dosyasının görüntüsü

Ücretsiz Lisans Alın

API’yi değerlendirme kısıtlamaları olmadan denemek için [ücretsiz bir geçici lisans] talep edebilirsiniz10.

Çözüm

Bu makalede, C++ kullanarak Excel dosyalarındaki metni birden çok sütuna nasıl ayıracağınızı öğrendiniz. Bunu başarmak için gerekli adımlarla birlikte kod parçacığının tamamını gördünüz. Aspose.Cells for C++, Excel ile ilgili görevlerinizi otomatikleştirmek için birçok ek özellik sağlayan güçlü bir API’dir. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak inceleyebilirsiniz. Herhangi bir sorunuz olması durumunda lütfen ücretsiz destek forumumuzda bize ulaşmaktan çekinmeyin.

Ayrıca bakınız