Benennen Sie doppelte Spalten beim Exportieren von Arbeitsblattdaten automatisch um
Mögliche Nutzungsszenarien
Manchmal hat der Benutzer beim Exportieren von Daten aus dem Arbeitsblatt in die Datentabelle ein Problem mit doppelten Spalten. DataTable kann keine doppelten Spalten haben, daher müssen doppelte Spalten umbenannt werden, bevor Sie Arbeitsblattdaten in die Datentabelle exportieren können. Aspose.Cells kann die doppelten Spalten automatisch gemäß der von Ihnen festgelegten Strategie mit umbenennenExportTableOptions.RenameStrategy Eigentum. Wenn Sie angebenStrategie umbenennen .Digit, Spalten werden wie Spalte1, Spalte2, Spalte3 usw. umbenannt und wenn Sie angebenStrategie umbenennen.Buchstabe, dann werden die Spalten wie SpalteA, SpalteB, SpalteC usw. umbenannt.
Benennen Sie doppelte Spalten beim Exportieren von Arbeitsblattdaten automatisch um
Der folgende Beispielcode fügt einige Daten in den ersten drei Spalten des Arbeitsblatts hinzu, aber alle Spalten haben denselben Namen, dhMenschen . Dann exportiert es die Daten aus dem Arbeitsblatt in die Datentabelle durch AngabeStrategie umbenennen.Briefstrategie. Anschließend werden die Spaltennamen der von Aspose.Cells generierten Datentabelle gedruckt. Der folgende Screenshot zeigt die Datentabelle mit exportierten Daten im Visualizer. Wie Sie sehen können, wurden doppelte Spalten in PeopleA, PeopleB usw. umbenannt.
Beispielcode
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Create a workbook. | |
Workbook wb = new Workbook(); | |
//Access first worksheet. | |
Worksheet ws = wb.Worksheets[0]; | |
//Write the same column name in columns A, B and C. | |
string columnName = "People"; | |
ws.Cells["A1"].PutValue(columnName); | |
ws.Cells["B1"].PutValue(columnName); | |
ws.Cells["C1"].PutValue(columnName); | |
//Insert data in column A, B and C. | |
ws.Cells["A2"].PutValue("Data"); | |
ws.Cells["B2"].PutValue("Data"); | |
ws.Cells["C2"].PutValue("Data"); | |
//Create ExportTableOptions and specify that you want to rename | |
//duplicate column names automatically via RenameStrategy property. | |
ExportTableOptions opts = new ExportTableOptions(); | |
opts.ExportColumnName = true; | |
opts.RenameStrategy = RenameStrategy.Letter; | |
//Export data to data table, duplicate column names will be renamed automatically. | |
System.Data.DataTable dataTable = ws.Cells.ExportDataTable(0, 0, 4, 3, opts); | |
//Now print the column names of the data table generated by Aspose.Cells while exporting worksheet data. | |
for (int i = 0; i < dataTable.Columns.Count; i++) | |
{ | |
Console.WriteLine(dataTable.Columns[i].ColumnName); | |
} | |
Konsolenausgabe
Hier ist die Konsolenausgabe des obigen Beispielcodes als Referenz.
People
PeopleA
PeopleB