本文目錄一覽:
用Java實現獲取文件類型的方法。
主要以下幾種方法:
這個MimetypesFileMap類會映射出一個file的Mime Type,這些Mime Type類型是在activation.jar包裡面的資源文件中定義的
import javax.activation.MimetypesFileTypeMap;
import java.io.File;
class GetMimeType {
public static void main(String args[]) {
File f = new File(“test.gif”);
System.out.println(“Mime Type of ” + f.getName() + ” is ” +
new MimetypesFileTypeMap().getContentType(f));
// expected output :
// “Mime Type of test.gif is image/gif”
}
}
使用 java.net.URL
警告:這個方法非常慢
與上面所說的匹配後綴名類似。後綴名和mime-type的映射關係被定義在[jre_home]\lib\content-types.properties這個文件中
import java.net.*;
public class FileUtils{
public static String getMimeType(String fileUrl)
throws java.io.IOException, MalformedURLException
{
String type = null;
URL u = new URL(fileUrl);
URLConnection uc = null;
uc = u.openConnection();
type = uc.getContentType();
return type;
}
public static void main(String args[]) throws Exception {
System.out.println(FileUtils.getMimeType(“”));
// output : text/plain
}
}
還有一種方式:就是取文件名最後一個“.”後的內容,通過人來判斷如
String fileName = “aaa.txt”;
String fileType =“txt”//通過方法取出方法類型為
String type = “”;
if( fileTyep.equals(“txt”)){
type = “記事本”;
}else if(fileTyep.equals(“img”)){
type = “img圖片”;
}。。。。。
java如何獲取文件信息?
File 類是對文件和文件夾的抽象,包含了對文件和文件夾的多種屬性和操作方法。File類的常用方法如下表:
返回
方法
說明
String getName 獲取文件名稱
String getParent 獲取文件的父路徑字符串
String getPath 獲取文件的相對路徑字符串
String getAbsolutePath 獲取文件的絕對路徑字符串
boolean exists 判斷文件或者文件夾是否存在
boolean isFile 判斷是不是文件類型
boolean isDirectory 判斷是不是文件夾類型
boolean delete 刪除文件或文件夾,如果刪除成功返回結果為true
boolean mkdir 創建文件夾,創建成功返回true
boolean setReadOnly 設置文件或文件夾的只讀屬性
long length 獲取文件的長度
long lastModified 獲取文件的最後修改時間
String[ ] list 獲取文件夾中的文件和子文件夾的名稱,並存放到字符串數組中
java根據路徑讀取文件
其讀取方法為:
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
public class readFile {
private static ArrayListString listname = new ArrayListString();
public static void main(String[] args)throws Exception{
readAllFile(“C:/Users/HP/Desktop”);
System.out.println(listname.size());
}
public static void readAllFile(String filepath) {
File file= new File(filepath);
if(!file.isDirectory()){
listname.add(file.getName());
}else if(file.isDirectory()){
System.out.println(“文件”);
String[] filelist=file.list();
for(int i = 0;ifilelist.length;i++){
File readfile = new File(filepath);
if (!readfile.isDirectory()) {
listname.add(readfile.getName());
} else if (readfile.isDirectory()) {
readAllFile(filepath + “\\” + filelist[i]);//遞歸
}
}
}
for(int i = 0;ilistname.size();i++){
System.out.println(listname.get(i));
}
}
}
java中怎樣獲得一個文件夾中的所有文件名
java中獲得一個文件夾中的所有文件名代碼如下:
package com.readfile;
import java.io.File;
public class GetAllFiles {
public static void main(String[] args) {
//路徑 這裡寫一個路徑進去
String path=”F:\\QQ文檔”;
//調用方法
getFiles(path);
}
/**
* 遞歸獲取某路徑下的所有文件,文件夾,並輸出
*/
public static void getFiles(String path) {
File file = new File(path);
// 如果這個路徑是文件夾
if (file.isDirectory()) {
// 獲取路徑下的所有文件
File[] files = file.listFiles();
for (int i = 0; i files.length; i++) {
// 如果還是文件夾 遞歸獲取裡面的文件 文件夾
if (files[i].isDirectory()) {
System.out.println(“目錄:” + files[i].getPath());
getFiles(files[i].getPath());
} else {
System.out.println(“文件:” + files[i].getPath());
}
}
} else {
System.out.println(“文件:” + file.getPath());
}
}
}
擴展資料:
如果想要獲得當前文件中的文件名只需要String [] fileName = file.list();就可以了。
如果要包括文件中的文件名就可以用遞歸的方式。下面是兩個具體的實現。
其中public static String [] getFileName(String path)是只得到當前文件中的文件名。
public static void getAllFileName(String path,ArrayListString fileName)是包括當前文件及其子文件的文件名。
參考資料:
百度百科-Java
java獲取指定資源文件路徑的幾種方法
你好,提問者:
指定資源路徑的方法有兩種:
一種是絕對路徑,一種是相對路徑。
獲取當前類的所在工程路徑;
File f = new File(this.getClass().getResource(“/”).getPath());
System.out.println(f);
獲取當前類的絕對路徑;
File f = new File(this.getClass().getResource(“”).getPath());
System.out.println(f);
獲取當前類的所在工程路徑;
File directory = new File(“”);//參數為空
String courseFile = directory.getCanonicalPath() ;
System.out.println(courseFile);
獲取當前工程src目錄下selected.txt文件的路徑:
URL xmlpath = this.getClass().getClassLoader().getResource(“selected.txt”);
System.out.println(xmlpath);
原創文章,作者:VNTQQ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/329828.html