Получать предупреждения при загрузке файла Excel
Возможные сценарии использования
Иногда пользователь пытается загрузить книгу, которая несколько повреждена, но загружается. В таком случае Aspose.Cells выдает предупреждения при загрузке книги. Вы можете поймать эти предупреждения, реализовав**IWarningCallback** интерфейс и настройка**LoadOptions.WarningCallback**имущество.
Получать предупреждения при загрузке файла Excel
В следующем примере кода объясняется, как получать предупреждения при загрузке файла Excel. Код загружаетобразец эксель файла который бросает**[DuplicateDefinedName] (https://reference.aspose.com/cells/net/aspose.cells/warningtype)** предупреждение при загрузке. Затем это предупреждение перехватывается**IWarningCallback.Warning()** метод, выводящий предупреждающие сообщения на консоль. Затем код сохраняет книгу каквыходной файл excelЕсли вы откроете образец файла Excel в Microsoft Excel, он также отобразит вам это предупреждение, как показано на этом снимке экрана. Пожалуйста, также проверьте консольный вывод кода, приведенного ниже, для большего понимания.
Образец кода
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Implement IWarningCallback interface to catch warnings while loading workbook | |
private class WarningCallback : IWarningCallback | |
{ | |
public void Warning(WarningInfo warningInfo) | |
{ | |
if (warningInfo.WarningType == WarningType.DuplicateDefinedName) | |
{ | |
Console.WriteLine("Duplicate Defined Name Warning: " + warningInfo.Description); | |
} | |
} | |
}//WarningCallback | |
//------------------------------------------------------------------ | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
//Create load options and set the WarningCallback property | |
//to catch warnings while loading workbook | |
LoadOptions options = new LoadOptions(); | |
options.WarningCallback = new WarningCallback(); | |
//Load the source excel file | |
Workbook book = new Workbook(dataDir + "sampleDuplicateDefinedName.xlsx", options); | |
//Save the workbook | |
book.Save(dataDir + "outputDuplicateDefinedName.xlsx"); | |
Консольный вывод
Вот консольный вывод приведенного выше кода при выполнении с предоставленнымобразец эксель файла.
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