/** * * (c) Copyright Ascensio System SIA 2021 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ package org.jeecg.modules.doc.util; import org.jeecg.modules.doc.constant.FileType; import java.net.URL; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; public class FileUtility { static {} public static FileType GetFileType(String fileName) { String ext = GetFileExtension(fileName).toLowerCase(); if (ExtsDocument.contains(ext)) return FileType.Word; if (ExtsSpreadsheet.contains(ext)) return FileType.Cell; if (ExtsPresentation.contains(ext)) return FileType.Slide; return FileType.Word; } public static List ExtsDocument = Arrays.asList ( ".doc", ".docx", ".docm", ".dot", ".dotx", ".dotm", ".odt", ".fodt", ".ott", ".rtf", ".txt", ".html", ".htm", ".mht", ".xml", ".pdf", ".djvu", ".fb2", ".epub", ".xps" ); public static List ExtsSpreadsheet = Arrays.asList ( ".xls", ".xlsx", ".xlsm", ".xlt", ".xltx", ".xltm", ".ods", ".fods", ".ots", ".csv" ); public static List ExtsPresentation = Arrays.asList ( ".pps", ".ppsx", ".ppsm", ".ppt", ".pptx", ".pptm", ".pot", ".potx", ".potm", ".odp", ".fodp", ".otp" ); public static String GetFileName(String url) { if (url == null) return ""; String fileName = url.substring(url.lastIndexOf('/') + 1, url.length()); fileName = fileName.split("\\?")[0]; return fileName; } public static String GetFileNameWithoutExtension(String url) { String fileName = GetFileName(url); if (fileName == null) return null; String fileNameWithoutExt = fileName.substring(0, fileName.lastIndexOf('.')); return fileNameWithoutExt; } public static String GetFileExtension(String url) { String fileName = GetFileName(url); if (fileName == null) return null; String fileExt = fileName.substring(fileName.lastIndexOf(".")); return fileExt.toLowerCase(); } public static Map GetUrlParams(String url) { try { String query = new URL(url).getQuery(); String[] params = query.split("&"); Map map = new HashMap<>(); for (String param : params) { String name = param.split("=")[0]; String value = param.split("=")[1]; map.put(name, value); } return map; } catch (Exception ex) { return null; } } }