Warnungen beim Laden einer Excel Datei erhalten
Mögliche Verwendungsszenarien
Manchmal versucht der Benutzer, die Arbeitsmappe zu laden, die etwas beschädigt, aber ladbar ist. In einem solchen Fall gibt Aspose.Cells beim Laden der Arbeitsmappe Warnungen aus. Sie können diese Warnungen einfangen, indem Sie die Schnittstelle IWarningCallback implementieren und die Eigenschaft LoadOptions.WarningCallback festlegen.
Warnungen beim Laden von Excel-Dateien erhalten
Der folgende Beispielcode zeigt, wie Sie Warnungen beim Laden einer Excel-Datei erhalten. Der Code lädt die beispielhafte Excel-Datei, die beim Laden eine DuplicateDefinedName Warnung auslöst. Diese Warnung wird dann von der Methode IWarningCallback.Warning() eingefangen, die die Warnmeldungen in der Konsole ausgibt. Der Code speichert dann die Arbeitsmappe als Ausgabe-Excel-Datei. Wenn Sie die beispielhafte Excel-Datei in Microsoft Excel öffnen, wird Ihnen diese Warnung ebenfalls angezeigt, wie im Screenshot gezeigt. Bitte überprüfen Sie auch die Konsolenausgabe des unten stehenden Codes für ein besseres Verständnis.
Beispielcode
//Implement IWarningCallback interface to catch warnings while loading workbook | |
public class WarningCallback implements IWarningCallback | |
{ | |
public void warning(WarningInfo warningInfo) | |
{ | |
if(warningInfo.getWarningType() == WarningType.DUPLICATE_DEFINED_NAME) | |
{ | |
System.out.println("Duplicate Defined Name Warning: " + warningInfo.getDescription()); | |
} | |
} | |
} |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(GetWarningLoadingAnExcel.class) + "loading_saving/"; | |
//Create load options and set the WarningCallback property | |
//to catch warnings while loading workbook | |
LoadOptions options = new LoadOptions(); | |
options.setWarningCallback(new WarningCallback()); | |
//Load the source excel file | |
Workbook book = new Workbook(dataDir + "sampleDuplicateDefinedName.xlsx", options); | |
//Save the workbook | |
book.save(dataDir + "outputDuplicateDefinedName.xlsx"); |
Konsolenausgabe
Hier ist die Konsolenausgabe des obigen Codes bei Ausführung mit der bereitgestellten Beispiel-Excel-Datei.
Duplicate Defined Name Warning: Name:PRINT_AREA;ReferTo:Introduction!$D$16:$D$17
Duplicate Defined Name Warning: Name:PRINT_AREA;ReferTo:Panel!$B$228
Duplicate Defined Name Warning: Name:PRINT_AREA;ReferTo:'Queries '!$D$14:$D$16