Erhalten Sie Warnungen beim Laden einer Excel-Datei
Mögliche Nutzungsszenarien
Manchmal versucht der Benutzer, die Arbeitsmappe zu laden, die etwas beschädigt, aber ladbar ist. In diesem Fall gibt Aspose.Cells beim Laden der Arbeitsmappe Warnungen aus. Sie können diese Warnungen abfangen, indem Sie die implementieren**IWarningCallback** Schnittstelle und Einstellung**LoadOptions.WarningCallback**Eigentum.
Erhalten Sie Warnungen beim Laden einer Excel-Datei
Der folgende Beispielcode erläutert, wie Warnungen beim Laden einer Excel-Datei angezeigt werden. Der Code lädt dieExcel-Beispieldatei der wirft**DuplicateDefinedName** Warnung beim Laden. Diese Warnung wird dann abgefangen**IWarningCallback.Warning()** Methode, die die Warnmeldungen auf der Konsole ausgibt. Der Code speichert dann die Arbeitsmappe alsExcel-Datei ausgebenWenn Sie die Beispiel-Excel-Datei in Microsoft Excel öffnen, wird Ihnen auch diese Warnung angezeigt, wie in diesem Screenshot gezeigt. Bitte überprüfen Sie zum besseren Verständnis auch die Konsolenausgabe des unten angegebenen Codes.
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, wenn er mit dem bereitgestellten ausgeführt wirdExcel-Beispieldatei.
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