在 Excel 中,工作表名稱通常能夠反映其用途或所含內容,提取這些名稱有助于理清整個工作簿的結構。對于新用戶或協作者來說,僅憑這些名稱就能快速掌握各表中的數據類型。本文將演示如何使用?Java 獲取 Excel 文件中的所有工作表名稱,幫助你更高效地管理和理解工作簿數據。
Spire.XLS for Java試用下載
安裝 Spire.XLS for Java
在開始用 Java 獲取 Excel 工作表名稱之前,我們需要先引入一個能夠處理 Excel 文件的庫。我們推薦使用使用?Spire.XLS for Java,這個庫無需依賴 Microsoft Office,支持讀取、編輯、導出等多種功能,尤其適合需要處理 Excel 數據的 Java 項目。 安裝這個 Java Excel 庫并不難:下載 Spire.XLS?的 JAR 文件,并將其添加到 Java 項目中作為依賴。如果你使用?Maven,只需在項目的 pom.xml 文件中添加以下代碼,便可輕松引入。
<repositories><repository><id>com.e-iceblue</id><name>e-iceblue</name><url>https://repo.e-iceblue.cn/repository/maven-public/</url></repository> </repositories> <dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.xls</artifactId><version>15.5.1</version></dependency> </dependencies>
通過 Java 獲取所有 Excel 工作表的名稱
Spire.XLS?提供了?Worksheet.getName()?方法,用于獲取工作表的名稱。但要獲取 Excel 中所有工作表的名稱(包括隱藏的工作表),你還需要遍歷每個工作表,以確保沒有工作表被遺漏。具體步驟如下:
- 創建一個?Workbook?對象。
- 通過?Workbook.loadFromFile()?方法加載一個 Excel 文件。
- 創建一個?StringBuilder?實例,用以儲存獲取到的工作表名稱。
- 遍歷每一個工作表。
- 通過?Worksheet.getName()?方法獲取當前工作表的名稱,然后將其添加到?StringBuilder?實例中。
- 將 StringBuilder 中的內容寫為 .txt 文件。
下方是在 Java 中獲取所有工作表名稱的完整代碼示例:
import java.io.*; import com.spire.xls.*; public class GetWorksheetNames { public static void main(String[] args) throws IOException { // 創建一個 Workbook 對象 Workbook workbook = new Workbook(); // 加載 Excel 文件 workbook.loadFromFile("/成績.xlsx"); // 創建一個 StringBuilder 實例,用以保存提取到的工作表名稱 StringBuilder stringBuilder = new StringBuilder(); // 遍歷工作表 for (Object worksheet : workbook.getWorksheets()) { // 獲取當前工作表 Worksheet sheet = (Worksheet) worksheet; // 獲取工作表的名稱。并將其添加到 StringBuilder 中 stringBuilder.append(sheet.getName() + "\r\n"); } // 將 StringBuilder 的內容寫入到文本文件中 FileWriter fw = new FileWriter("/獲取excel工作表名稱.txt", true); BufferedWriter bw = new BufferedWriter(fw); bw.append(stringBuilder); bw.close(); fw.close(); // 釋放資源 workbook.dispose(); } }
在 Java 中獲取隱藏工作表的名稱
有時 Excel 文件中可能包含隱藏的工作表。若需要獲取這些隱藏工作表的名稱,可以先遍歷所有工作表,篩選出隱藏的部分,再通過?Worksheet.getName()?方法提取其名稱。操作步驟如下所示:
- 創建一個?Workbook?實例。
- 使用?Workbook.loadFromFile()?方法加載 Excel 文件。
- 創建一個?StringBuilder?實例,用于存儲獲取到的工作表名稱。
- 遍歷每個工作表,查找隱藏的工作表。
- 使用?Worksheet.getName()?方法獲取每個隱藏工作表的名稱,并將其添加到?StringBuilder?實例中。
- 將?StringBuilder?中的內容寫入到一個 txt 文件中。
以下是 Java 獲取所有 Excel 隱藏工作表名稱的完整示例代碼。可直接在 Java 編輯器中運行,按需修改細節即可:
import java.io.*; import com.spire.xls.*; public class GetHiddenWorksheetNames { public static void main(String[] args) throws IOException { // 創建一個 Workbook 對象 Workbook workbook = new Workbook(); // 加載 Excel 文件 workbook.loadFromFile("/成績.xlsx"); // 創建一個 StringBuilder 以儲存提取的工作表名稱 StringBuilder stringBuilder = new StringBuilder(); // 遍歷所有工作表 for (Object worksheet : workbook.getWorksheets()) { // 獲取當前工作表 Worksheet sheet = (Worksheet) worksheet; // Detect the hidden worksheet 檢查工資表是否被隱藏 if (sheet.getVisibility() == WorksheetVisibility.Hidden) { // 獲取隱藏工作表的名稱并添加到 StringBuilder 中 stringBuilder.append(sheet.getName() + "\r\n"); } } // 將 StringBuilder 的內容寫入到文本文件中 FileWriter fw = new FileWriter("/獲取隱藏工作表名稱.txt", true); BufferedWriter bw = new BufferedWriter(fw); bw.append(stringBuilder); bw.close(); fw.close(); // 釋放資源 workbook.dispose(); } }
結論
通過本文的講解,你已經學會了如何使用 Java 獲取 Excel 文件中的所有工作表名稱,包括隱藏的工作表。借助 Spire.XLS for Java,你可以更高效地處理 Excel 數據,為后續的數據分析或自動化處理打下基礎。?