Ange exporterat kalkylblad HTML filsökväg via IFilePathProvider-gränssnittet
Möjliga användningsscenarier
Anta att du har en excel-fil med flera ark och du vill exportera varje ark till en individuell HTML-fil. Om något av dina ark har länkar till andra ark, kommer dessa länkar att brytas i den exporterade HTML. För att hantera detta problem tillhandahåller Aspose.CellsIFilePathProvidergränssnitt som du kan implementera för att fixa de trasiga länkarna.
Ange exporterat kalkylblad HTML filsökväg via IFilePathProvider-gränssnittet
Vänligen ladda nerexempel på excel-fil används i följande kod och dess exporterade HTML-filer. Alla dessa filer finns inutiTemp katalog. Du borde extrahera denC: kör. Då blir detC:\Temp katalog. Då öppnar duBlad1.html filen i webbläsaren och klicka på de två länkarna i den. Dessa länkar hänvisar till dessa två exporterade HTML kalkylblad som finns inutiC:\Temp\OtherSheetskatalog.
file:///C:/Temp/OtherSheets/Sheet2.html#RANGE!A1
file:///C:/Temp/OtherSheets/Sheet3.html#RANGE!A1
Följande skärmdump visar hurC:\Temp\Sheet1.htmloch dess länkar ser ut
Följande skärmdump visar källan HTML. Som du kan se att länkarna nu syftar påC:\Temp\OtherSheets katalog. Detta uppnåddes med hjälp avIFilePathProvidergränssnitt.
Exempelkod
Vänligen noteraC:\Temp katalogen är bara för illustrationsändamål. Du kan använda valfri katalog och platsexempel på excel-fil inuti där och kör den medföljande exempelkoden. Det kommer då att skapasOtherSheets underkatalog i din katalog och exportera andra och tredje kalkylblad HTML inuti den. Vänligen ändradirPathvariabel inuti den medföljande koden och hänvisa den till den katalog du väljer innan du kör den.
Se att kommentera dessa rader i koden kommer att bryta in länkarnaBlad1.html ochBlad2.html ellerBlad3.htmlkommer inte att öppnas när deras länkar kommer att klickas inutiBlad1.html
//If you will comment this line, then hyperlinks will be broken
options.setFilePathProvider(new FilePathProvider());
Här är den kompletta exempelkoden som du kan köra med den medföljandeexempel på excel-fil.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(OpeningFilesThroughPath.class); | |
// Opening from path. Creating an Workbook object with an Excel file path | |
Workbook workbook1 = new Workbook(dataDir + "Book1.xlsx"); | |
// Print message | |
System.out.println("Workbook opened using path successfully."); |
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
public class FilePathProvider { | |
// Gets the full path of the file by worksheet name when exporting worksheet to html separately. | |
// So the references among the worksheets could be exported correctly. | |
public String getFullName(String sheetName) { | |
String dataDir = Utils.getDataDir(FilePathProvider.class); | |
if ("Sheet2".equals(sheetName)) { | |
return dataDir + "Sheet2.html"; | |
} else if ("Sheet3".equals(sheetName)) { | |
return dataDir + "Sheet3.html"; | |
} | |
return ""; | |
} | |
} |