
JSON ve CSV gibi mevcut çeşitli kaynaklardan verileri kolayca Microsoft Excel’e aktarabilirsiniz. Bir Java geliştiricisi olarak, işi yapmak için birden fazla teknik kullanabilirsiniz; örneğin, verileri Dizilerden, Nesne Listelerinden ve hatta doğrudan JSON ve CSV’den Excel belgelerine programlı olarak aktarabilirsiniz. Bu yazıda kolay ve basit teknikleri tartışacağız ve Java kullanarak verileri Excel’e nasıl aktaracağınızı öğreneceksiniz.
Bu makalede aşağıdaki konular tartışılmaktadır/kapsanmaktadır:
- Verileri Dışa Aktarmak için Java API
- Diziyi Java’da Excel’e Aktarma
- İki Boyutlu Diziyi Excel’e Aktarma
- ArrayList’ten Java’da Excel’e
- Özel Nesnelerin Koleksiyonunu Java’da Excel’e Aktarma
- Java’da Birleştirilmiş Hücrelerle Verileri Excel’e Aktarma
- Java’da Satırları ve Sütunları bir Excel dosyasından diğerine kopyalama
- JSON Verilerini Java’da Excel’e Aktarma
- Java kullanarak Excel’de CSV Verilerini alın
Java Verilerini Excel Kitaplığına Aktarma
Verileri Excel’e aktarmak için Aspose.Cells for Java API kullanacağım. Java uygulamaları içinde Excel dosyaları oluşturmanıza, düzenlemenize veya dönüştürmenize olanak tanıyan güçlü bir elektronik tablo işleme API’sidir. API, Microsoft Excel uygulamasına ihtiyaç duymadan Excel otomasyon özelliklerini programlı olarak gerçekleştirmenizi sağlar.
Aşağıda belirtilen kod örneklerini denemek için API’nin JAR’ını indirebilir veya yalnızca aşağıdaki pom.xml yapılandırmasını Maven tabanlı Java uygulamanıza ekleyebilirsiniz.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>21.8</version>
</dependency>
Diziyi Java’da Excel’e Aktarma
Tek boyutlu bir diziden veya iki boyutlu bir diziden verileri kolayca bir Excel belgesine aktarabilirsiniz. Dizi bir referans tipinde veya bir değer tipinde olabilir. Aşağıda belirtilen basit adımları izleyerek bir dizideki verileri Excel’e aktarabilirsiniz:
- Workbook sınıfının bir örneğini oluşturun
- Worksheet sınıfının bir örneğindeki çalışma sayfasını alın
- Dize değerlerini içeren bir dizi oluşturun
- Diziyle importArray() yöntemini çağırın
- Workbook sınıfının save() yöntemini çağırarak çıktı dosyasını kaydedin.
Aşağıdaki kod örneği, Java kullanarak bir dize dizisinin Excel’e nasıl aktarılacağını gösterir.
// Bir Çalışma Kitabı nesnesini başlat
Workbook workbook = new Workbook();
// Çalışma sayfasının referansını alma
Worksheet worksheet = workbook.getWorksheets().get(0);
// Adları dize değerleri olarak içeren bir dizi oluşturma
String[] names = new String[] { "Laurence Chen", "Roman Korchagin", "Kyle Huang" };
// Ad dizisini dikey olarak ilk satıra ve ilk sütuna aktarma
worksheet.getCells().importArray(names, 0, 0, true);
// Excel dosyasını kaydetme
workbook.save("C:\\Files\\output.xlsx");

Diziyi Java’da Excel’e Aktarma
API’nin Workbook sınıfı, bir Excel elektronik tablosu oluşturmak için kullanılan ana sınıftır. Yerel excel dosyalarını açma ve kaydetme işlevselliği sağlar. Bu sınıfın save() yöntemi, çıktı dosyasını belirtilen dosya yoluna kaydetmek için kullanılır.
Worksheet sınıfı tek bir çalışma sayfasını temsil eder ve hücreler ve satırlarla çalışma işlevselliği sağlar.
Cells sınıfının importArray() yöntemi, bir dizi dizeyi bir çalışma sayfasına aktarır. Aşağıdaki giriş parametrelerini alır:
- stringArray: String değerlerinin dizisi
- FirstRow: Dışa aktarılacak ilk hücrenin satır numarası
- FirstColumn: Dışa aktarılacak ilk hücrenin sütun numarası
- isVertical: Verilerin dikey mi yatay mı dışa aktarılacağını belirtir
API ayrıca bir tamsayı veya çift dizisini bir çalışma sayfasına aktarmak için importArray() yönteminin aşırı yüklenmiş sürümlerini de sağlar.
İki Boyutlu Diziyi Excel’e Aktarma
Benzer şekilde, iki boyutlu bir diziyi bir Excel dosyasına aktarabilirsiniz. Aşağıdaki kod örneği, iki boyutlu bir dizinin Java’da bir Excel dosyasına nasıl aktarılacağını gösterir.
// Bir Çalışma Kitabı nesnesini başlat
Workbook workbook = new Workbook();
// Çalışma sayfasının referansını alma
Worksheet worksheet = workbook.getWorksheets().get(0);
// İki boyutlu bir tamsayı dizisi oluşturma
int[][] array2D = {
{ 1, 2 },
{ 3, 4 },
{ 5, 6 },
{ 7, 8 }
};
// Ad dizisini dikey olarak ilk satıra ve ilk sütuna aktarma
worksheet.getCells().importArray(array2D, 0, 0);
// Excel dosyasını kaydetme
workbook.save("C:\\Files\\output.xlsx");

İki Boyutlu Diziyi Excel’e Aktarma
Cells sınıfı, iki boyutlu bir tamsayı dizisini bir çalışma sayfasına aktarmak için importArray() yöntemini sağlar. API aynı zamanda iki boyutlu bir dize dizisini veya çiftini bir çalışma sayfasına aktarmak için bu yöntemin aşırı yüklenmiş sürümlerini de sağlar.
ArrayList’i Java’da Excel’e aktarın
Aşağıda belirtilen adımları izleyerek verileri ArrayList’ten Excel’e aktarabilirsiniz:
- Workbook sınıfının bir örneğini oluşturun
- Worksheet sınıfının bir örneğindeki çalışma sayfasını alın
- Dize değerlerini içeren bir dizi listesi oluşturun
- Dizi listesiyle importArrayList() yöntemini çağırın
- Workbook sınıfının save() yöntemini çağırarak çıktı dosyasını kaydedin.
Aşağıdaki kod örneği, ArrayList’in Java’da Excel’e nasıl aktarılacağını gösterir.
// Bir Çalışma Kitabı nesnesini başlat
Workbook workbook = new Workbook();
// Çalışma sayfasının referansını alma
Worksheet worksheet = workbook.getWorksheets().get(0);
// ArrayList nesnesini örneklendirmek
ArrayList<String> list = new ArrayList<String>();
// Listeye dize değerleri olarak birkaç ad ekleyin
list.add("Laurence Chen");
list.add("Roman Korchagin");
list.add("Kyle Huang");
list.add("Tommy Wang");
// ArrayList içeriğini çalışma sayfasının ilk satırında ve ilk sütununda dikey olarak dışa aktarma.
worksheet.getCells().importArrayList(list, 0, 0, true);
// Excel dosyasını kaydetme
workbook.save("C:\\Files\\Output.xlsx");

ArrayList’i Java’da Excel’e aktarın
Cells sınıfının importArrayList() yöntemi, ArrayList verilerini bir çalışma sayfasına aktarır. Verilerin ArrayList’i de dahil olmak üzere dört parametre alır. Diğer parametreler, FirstRow, FirstColumn ve isVertical’dır.
Özel Nesnelerin Koleksiyonunu Java’da Excel’e Aktarma
Aşağıda belirtilen adımları izleyerek verileri bir özel nesne koleksiyonundan Excel’e aktarabilirsiniz:
- Workbook sınıfının bir örneğini oluşturun
- Worksheet sınıfının bir örneğindeki çalışma sayfasını alın
- Özel nesnelerin dizi listesini oluşturma
- Dizi listesiyle importCustomObjects() yöntemini çağırın
- Workbook sınıfının save() yöntemini çağırarak çıktı dosyasını kaydedin.
Aşağıdaki kod örneği, özel nesneler koleksiyonunun Java’da Excel’e nasıl aktarılacağını gösterir.
// Yeni bir Çalışma Kitabı başlat
Workbook book = new Workbook();
// Çalışma sayfasının referansını alma
Worksheet sheet = book.getWorksheets().get(0);
// Kişilerin ArrayList'ini Tanımlayın
List<Person> list = new ArrayList<Person>();
list.add(new Person("Mike", 25, "Software Engineer"));
list.add(new Person("Steve", 30, "Doctor"));
list.add(new Person("Billy", 35, "Teacher"));
// Çalışma sayfasına aktarmak için hepsini değil, yalnızca Ad ve Yaş sütunlarını seçiyoruz
sheet.getCells().importCustomObjects((Collection)list,
new String[] { "Name", "Age" }, // propertyNames
true, // isPropertyNameShown
0, // firstRow
0, // firstColumn
list.size(), // Number of objects to be exported
true, // insertRows
null, // dateFormatString
false); // convertStringToNumber
// Excel dosyasını kaydedin
book.save("C:\\Files\\Output.xlsx");

Java’da Excel’e Özel Nesnelerin Toplanması
Cells sınıfının importCustomObjects() yöntemi, özel nesnelerin bir listesini dışa aktarır ve aşağıdaki parametreleri alır. API ayrıca bu yöntemin daha az parametre alan aşırı yüklenmiş sürümünü de sağlar.
- liste: Özel nesnelerin koleksiyonu
- propertyName: Dışa aktarılacak belirli bir özelliğin adını belirtin. Eğer null ise nesnenin tüm özelliklerini dışa aktaracaktır.
- isPropertyNameShown: Özellik adının ilk satıra aktarılıp aktarılmayacağını belirtir
- FirstRow: Dışa aktarılacak ilk hücrenin satır numarası
- FirstColumn: Dışa aktarılacak ilk hücrenin sütun numarası
- rowNumber: Dışa aktarılacak satır sayısı
- insertRows: Verileri sığdırmak için fazladan satırların eklenip eklenmeyeceğini belirtir
- dataFormatString: Hücreler için tarih biçimi dizesi
- ConvertStringToNumber: Bu yöntemin dizeyi sayıya dönüştürmeye çalışıp çalışmayacağını belirtir.
Java’da Birleştirilmiş Hücrelerle Verileri Excel’e Aktarma
Aşağıda belirtilen adımları izleyerek, bir nesne koleksiyonundan verileri birleştirilmiş hücreleri içeren bir çalışma sayfasına aktarabilirsiniz:
- Workbook sınıfının bir örneğini oluşturun with template file path
- Worksheet sınıfının bir örneğindeki çalışma sayfasını alın
- Nesnelerin dizi listesini oluşturma
- ImportTableOptions sınıfının bir örneğini oluşturun
- Dizi listesiyle importCustomObjects() yöntemini çağırın
- Workbook sınıfının save() yöntemini çağırarak çıktı dosyasını kaydedin.
Aşağıdaki kod örneği, özel nesneler koleksiyonunun Java’da birleştirilmiş hücreler içeren bir Excel çalışma sayfasına nasıl aktarılacağını gösterir.
// Mevcut bir Çalışma Kitabının açılması.
Workbook workbook = new Workbook("C:\\Files\\SampleMergedTemplate.xlsx");
// Çalışma sayfasının referansını alma
Worksheet sheet = workbook.getWorksheets().get(0);
// ArrayList nesnesini örneklendirmek
List<Product> productList = new ArrayList<Product>();
// Ürün koleksiyonu oluşturma
for (int i = 0; i < 3; i++)
{
Product product = new Product(i, "Product - " + i);
productList.add(product);
}
// Tablo içe aktarma seçeneklerini tanımlayın
ImportTableOptions tableOptions = new ImportTableOptions();
// CheckMergedCells özelliğini true olarak ayarlayın
tableOptions.setCheckMergedCells(true);
tableOptions.setFieldNameShown(false);
// Verileri excel şablonuna aktarın (ikinci satırda, ilk sütunda)
sheet.getCells().importCustomObjects((Collection)productList, 1, 0, tableOptions);
// Excel dosyasını kaydedin
workbook.save("C:\\Files\\Output.xlsx", SaveFormat.XLSX);

Java’da Birleştirilmiş Hücrelerle Verileri Excel’e Aktarma
ImportTableOptions sınıfı, verileri hücrelere aktarmak için çeşitli seçenekler sunar. setCheckMergedCells, birleştirilmiş hücrelerin kontrol edilip edilmediğini gösterir. setFieldNameShown özelliği, alan adının dışa aktarılıp aktarılmayacağını belirtir.
Java’da Satırları ve Sütunları bir Excel dosyasından diğerine kopyalama
Aşağıda belirtilen adımları izleyerek satırları ve sütunları bir Excel dosyasından başka bir dosyaya programlı olarak kolayca kopyalayabilirsiniz:
- Workbook sınıfının bir örneğini oluşturun with source workbook input file
- Hedef çalışma kitabı için Workbook sınıfının bir örneğini oluşturun
- Kaynak ve hedef çalışma sayfalarını Worksheet sınıfının ayrı örneklerinde alın
- Hedef çalışma sayfasının copyRows() yöntemini kaynak çalışma sayfası hücreleriyle çağırın
- Workbook sınıfının save() yöntemini çağırarak hedef çalışma kitabı çıktı dosyasını kaydedin.
Aşağıdaki kod örneği, Java kullanarak satır ve sütunların bir Excel dosyasından diğerine nasıl kopyalanacağını gösterir.
// Kaynak excel dosyasını açın.
Workbook srcWorkbook = new Workbook("C:\\Files\\Source_Workbook.xlsx");
// Hedef excel dosyasının örneğini oluşturun.
Workbook destWorkbook = new Workbook();
// Kaynak çalışma kitabının ilk çalışma sayfasını alın.
Worksheet srcWorksheet = srcWorkbook.getWorksheets().get(0);
// Hedef çalışma kitabının ilk çalışma sayfasını alın.
Worksheet desWorksheet = destWorkbook.getWorksheets().get(0);
// Kaynak Çalışma Kitabının ilk çalışma sayfasının tüm satırlarını şuraya kopyalayın:
// Hedef Çalışma Kitabının ilk çalışma sayfası.
desWorksheet.getCells().copyRows(srcWorksheet.getCells(), 0, 0, srcWorksheet.getCells().getMaxDisplayRange().getRowCount());
// Excel dosyasını kaydedin.
destWorkbook.save("C:\\Files\\Destination_Workbook.xlsx");

Java’da Satırları ve Sütunları bir Excel dosyasından diğerine kopyalama
Belirli satırları bir Excel dosyasından diğerine kopyalayabilirsiniz. Aşağıdaki kod örneği, Java kullanarak belirli satırların bir Excel dosyasından diğerine nasıl kopyalanacağını gösterir.
// Kaynak excel dosyasını açın.
Workbook srcWorkbook = new Workbook("C:\\Files\\Source_Workbook.xlsx");
// Hedef excel dosyasının örneğini oluşturun.
Workbook destWorkbook = new Workbook();
// Kaynak çalışma kitabının ilk çalışma sayfasını alın.
Worksheet srcWorksheet = srcWorkbook.getWorksheets().get(0);
// Hedef çalışma kitabının ilk çalışma sayfasını alın.
Worksheet desWorksheet = destWorkbook.getWorksheets().get(0);
// Kaynak Çalışma Kitabının ikinci satırını hedef Çalışma Kitabının ilk satırına kopyalayın.
desWorksheet.getCells().copyRow(srcWorksheet.getCells(), 1, 0);
// Kaynak Çalışma Kitabının dördüncü satırını hedef Çalışma Kitabının ikinci satırına kopyalayın.
desWorksheet.getCells().copyRow(srcWorksheet.getCells(), 3, 1);
// Excel dosyasını kaydedin.
destWorkbook.save("C:\\Files\\Destination_Workbook.xlsx");

Java’da Belirli Satırları ve Sütunları bir Excel dosyasından diğerine kopyalama
copyRows() yöntemi, tüm satırların verilerini ve formatlarını kopyalar. Kaynak satır dizini, hedef satır dizini ve kopyalanan satır numarasıyla birlikte kaynak çalışma sayfası hücrelerinin giriş parametreleri olarak kopyalanması gerekir. API aynı zamanda satırları CopyOptions ve PasteOptions ile kopyalamak için bu yöntemin aşırı yüklenmiş sürümlerini de sağlar.
Benzer şekilde, copyColumn() veya copyColumns() yöntemlerini kullanarak sütun verilerini bir Microsoft Excel belgesinden diğerine kopyalayabilirsiniz.
JSON Verilerini Java’da Excel’e Aktarma
Aşağıda belirtilen adımları izleyerek verileri bir JSON dosyasından Excel’e kolayca aktarabilirsiniz:
- Workbook sınıfının bir örneğini oluşturun
- Worksheet sınıfının bir örneğindeki çalışma sayfasını alın
- JSON dosyasını okuyun
- CellsFactory sınıfının bir örneğini oluşturun
- createStyle() yöntemini çağırarak stili başlatın
- Yatay Hizalama, Yazı Tipi rengi vb. gibi çeşitli stil özelliklerini ayarlayın.
- JsonLayoutOptions sınıfının bir örneğini oluşturun
- Başlık stilini stil nesnesiyle ayarlayın
- Diziyi tablo özelliği olarak true olarak ayarla
- JSON girişi ve JsonLayoutOptions ile JsonUtility.importData() yöntemini çağırın
- Workbook sınıfının save() yöntemini çağırarak çıktı dosyasını kaydedin.
Aşağıdaki kod örneği, Java kullanarak JSON dosyasındaki verilerin Excel’e nasıl aktarılacağını gösterir.
// Bir Çalışma Kitabı nesnesinin örneğini oluşturma
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.getWorksheets().get(0);
// JSON dosyasını oku
File file = new File("C:\\Files\\sample.json");
BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
String jsonInput = "";
String tempString;
while ((tempString = bufferedReader.readLine()) != null) {
jsonInput = jsonInput + tempString;
}
bufferedReader.close();
// Stilleri Ayarla
CellsFactory factory = new CellsFactory();
Style style = factory.createStyle();
style.setHorizontalAlignment(TextAlignmentType.CENTER);
style.getFont().setColor(Color.getCyan());
style.getFont().setBold(true);
// JsonLayoutOptions'ı ayarlayın
JsonLayoutOptions options = new JsonLayoutOptions();
options.setTitleStyle(style);
options.setArrayAsTable(true);
// JSON Verilerini Dışa Aktar
JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, options);
// Excel dosyasını kaydet
workbook.save("C:\\Files\\Output.xlsx");
{
"quiz": {
"sport": {
"q1": {
"question": "Which one is correct team name in NBA?",
"answer": "Huston Rocket"
}
},
"maths": {
"q1": {
"question": "5 + 7 = ?",
"answer": "12"
},
"q2": {
"question": "12 - 8 = ?",
"answer": "4"
}
}
}
}

JSON Verilerini Java’da Excel’e Aktarma
CellsFactory sınıfı, Hücre modelinin sınıflarını başlatır. Bu sınıfın createStyle() yöntemi, Style sınıfının yeni bir stil nesnesini oluşturur. Style sınıfı, yazı tipi, renk, hizalama, kenarlık vb. gibi Excel belgesinin görüntüleme stilinin ayarlanmasına olanak tanır.
JsonLayoutOptions sınıfı, JSON düzen türünün seçeneklerini sağlar. Bu sınıfın setTitleStyle yöntemi, başlığın tanımlanmış stilini ayarlamak için kullanılır. setArrayAsTable yöntemi, Array öğesinin tablo olarak işlenmesine olanak tanır.
API, JSON’u işlemek için JsonUtility sınıfını sağlar. Bu sınıfın importData() yöntemi JSON dizesini dışa aktarır ve aşağıdaki parametreleri alır:
- json: JSON dizesi
- hücreler: Hücreler
- satır: Satır dizini
- sütun: Sütun dizini
- seçenek: JSON dizesini dışa aktarma seçenekleri
Java kullanarak Excel’de CSV Verilerini alın
Aşağıda belirtilen basit adımları izleyerek verileri bir CSV dosyasından Excel’e aktarabilirsiniz:
- LoadFormat ile LoadOptions sınıfının bir örneğini oluşturun
- CSV dosya yolu ve LoadOptions nesnesiyle Workbook sınıfının bir örneğini oluşturun
- Workbook sınıfının save() yöntemini çağırın ve çıktı dosyasını kaydedin
Aşağıdaki kod örneği, Java kullanarak CSV dosyasındaki verilerin Excel’e nasıl aktarılacağını gösterir.
// LoadOptions'ı CSV LoadFormat ile başlatın.
LoadOptions loadOptions = new LoadOptions(LoadFormat.CSV);
// CSV dosyasını Çalışma Kitabı nesnesi olarak açın
Workbook workbook = new Workbook("C:\\Files\\Sample.csv", loadOptions);
// Dosyayı Excel Belgesi olarak kaydedin
workbook.save("C:\\Files\\Output.xlsx");
id,language,edition,author,streetAddress,city,state,postalCode
01,Java,third,Herbert Schildt,126,San Jone,CA,394221
02,C++,second,EAAAA,126,San Jone,CA,394221
03,.Net,second,E.Balagurusamy,126,San Jone,CA,394221

CSV Verilerini Java’da Excel’e Aktarma
API’nin LoadOptions sınıfı, dosyayı yüklemek için seçenekler sağlar. LoadFormat sınıfı, yükleme dosyası formatlarını temsil eden sabitleri içerir.
Ücretsiz Lisans Alın
Ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmadan deneyebilirsiniz.
Çözüm
Bu makalede, birden çok yolu kullanarak verileri Java’da Excel’e nasıl aktaracağınızı öğrendiniz. Diziler, JSON veya CSV dosyalarından verilerin programlı olarak Excel’e nasıl aktarılacağını açıkladık. Ayrıca, Java kullanarak satır ve sütunları bir Excel dosyasından başka bir dosyaya nasıl kopyalayacağınızı öğrendiniz. Aspose.Cells for Java API hakkında daha fazla bilgiyi belgeleri kullanarak edinebilirsiniz. Herhangi bir belirsizlik durumunda lütfen forum üzerinden bizimle iletişime geçmekten çekinmeyin.
Ayrıca bakınız
Sıkça Sorulan Sorular
Veriler Java’da bir XLSX dosyasına nasıl aktarılır? Java uygulamanıza entegrasyonu kolay Aspose.Cells for Java API’yi kullanarak Diziler, Nesneler Koleksiyonu, JSON ve CSV’deki verileri kolayca bir XLSX dosyasına aktarabilirsiniz.
Verileri JSON’dan Excel’e nasıl aktarırım? Aspose.Cells API, JsonUtility’nin JSON dosyasındaki verileri Java’da Excel’e aktarmasını sağlar. JSON Verilerini Java’da Excel’e Aktar bölümünün altında basit adımları bulabilirsiniz.
Verileri CSV’den Java’da Excel’e nasıl aktarırım? Aspose.Cells API’yi kullanarak bir CSV dosyasını kolayca yükleyebilir ve XLSX olarak kaydedebilirsiniz. Java kullanarak Excel’de CSV Verileri Alma bölümünün altında basit adımları bulabilirsiniz.