導航:首頁 > 使用方法 > file類常用的主要方法

file類常用的主要方法

發布時間:2022-05-03 08:08:42

⑴ java 種的File類是用來做什麼的有什麼用處(追加40分)

java 種的File類的作用和用處如下:
1.直接處理文件和文件系統。File類沒有指定信息怎樣從文件讀取或向文件存儲;它描述了文件本身的屬性。File對象用來獲取或處理與磁碟文件相關的信息,例如許可權,時間,日期和目錄路徑。此外,File還瀏覽子目錄層次結構。很多程序中文件是數據的根源和目標。盡管它們在小應用程序中因為安全原因而受到嚴格限制,文件仍是存儲固定和共享信息的主要資源。Java中的目錄當成File 對待,它具有附加的屬性——一個可以被 list( )方法檢測的文件名列表。

2.下面的構造函數可以用來生成File 對象:
File(String directoryPath)
File(String directoryPath, String filename)
File(File dirObj, String filename)
這里,directoryPath是文件的路徑名,filename 是文件名,dirObj 一個指定目錄的File 對象。下面的例子創建了三個文件:f1,f2,和f3。第一個File對象是由僅有一個目錄路徑參數的構造函數生成的。第二個對象有兩個參數——路徑和文件名。第三個File對象的參數包括指向f1文件的路徑及文件名。f3和f2指向相同的文件。
File f1 = new File("/");
File f2 = new File("/","autoexec.bat");
File f3 = new File(f1,"autoexec.bat");
注意:Java 能正確處理UNIX和Windows/DOS約定路徑分隔符。如果在Windows版本的Java下用斜線(/),路徑處理依然正確。記住,如果你用Windows/DOS使用反斜線(/)的約定,你需要在字元串內使用它的轉義序列(//)。Java約定是用UNIX和URL風格的斜線來作路徑分隔符。

⑵ java中的file類怎麼

java里的文件操作控制
一.獲得控制台用戶輸入的信息
/** *//**獲得控制台用戶輸入的信息
* @return
* @throws IOException
*/
public String getInputMessage() throws IOException...{
System.out.println("請輸入您的命令∶");
byte buffer[]=new byte[1024];
int count=System.in.read(buffer);
char[] ch=new char[count-2];//最後兩位為結束符,刪去不要
for(int i=0;i<count-2;i++)
ch[i]=(char)buffer[i];
String str=new String(ch);
return str;
}
可以返回用戶輸入的信息,不足之處在於不支持中文輸入,有待進一步改進。

二.復制文件
1.以文件流的方式復制文件
/** *//**以文件流的方式復制文件
* @param src 文件源目錄
* @param dest 文件目的目錄
* @throws IOException
*/
public void File(String src,String dest) throws IOException...{
FileInputStream in=new FileInputStream(src);
File file=new File(dest);
if(!file.exists())
file.createNewFile();
FileOutputStream out=new FileOutputStream(file);
int c;
byte buffer[]=new byte[1024];
while((c=in.read(buffer))!=-1)...{
for(int i=0;i<c;i++)
out.write(buffer[i]);
}
in.close();
out.close();
}
該方法經過測試,支持中文處理,並且可以復制多種類型,比如txt,xml,jpg,doc等多種格式

三.寫文件

1.利用PrintStream寫文件

/** *//**
* 文件輸出示例
*/
public void PrintStreamDemo()...{
try ...{
FileOutputStream out=new FileOutputStream("D:/test.txt");
PrintStream p=new PrintStream(out);
for(int i=0;i<10;i++)
p.println("This is "+i+" line");
} catch (FileNotFoundException e) ...{
e.printStackTrace();
}
}
2.利用StringBuffer寫文件
public void StringBufferDemo() throws IOException......{
File file=new File("/root/sms.log");
if(!file.exists())
file.createNewFile();
FileOutputStream out=new FileOutputStream(file,true);
for(int i=0;i<10000;i++)......{
StringBuffer sb=new StringBuffer();
sb.append("這是第"+i+"行:前面介紹的各種方法都不關用,為什麼總是奇怪的問題 ");
out.write(sb.toString().getBytes("utf-8"));
}
out.close();
}
該方法可以設定使用何種編碼,有效解決中文問題。
四.文件重命名
/** *//**文件重命名
* @param path 文件目錄
* @param oldname 原來的文件名
* @param newname 新文件名
*/
public void renameFile(String path,String oldname,String newname)...{
if(!oldname.equals(newname))...{//新的文件名和以前文件名不同時,才有必要進行重命名
File oldfile=new File(path+"/"+oldname);
File newfile=new File(path+"/"+newname);
if(newfile.exists())//若在該目錄下已經有一個文件和新文件名相同,則不允許重命名
System.out.println(newname+"已經存在!");
else...{
oldfile.renameTo(newfile);
}
}
} 五.轉移文件目錄
轉移文件目錄不等同於復制文件,復制文件是復制後兩個目錄都存在該文件,而轉移文件目錄則是轉移後,只有新目錄中存在該文件。
/** *//**轉移文件目錄
* @param filename 文件名
* @param oldpath 舊目錄
* @param newpath 新目錄
* @param cover 若新目錄下存在和轉移文件具有相同文件名的文件時,是否覆蓋新目錄下文件,cover=true將會覆蓋原文件,否則不操作
*/
public void changeDirectory(String filename,String oldpath,String newpath,boolean cover)...{
if(!oldpath.equals(newpath))...{
File oldfile=new File(oldpath+"/"+filename);
File newfile=new File(newpath+"/"+filename);
if(newfile.exists())...{//若在待轉移目錄下,已經存在待轉移文件
if(cover)//覆蓋
oldfile.renameTo(newfile);
else
System.out.println("在新目錄下已經存在:"+filename);
}
else...{
oldfile.renameTo(newfile);
}
}
}
六.讀文件
1.利用FileInputStream讀取文件
/** *//**讀文件
* @param path
* @return
* @throws IOException
*/
public String FileInputStreamDemo(String path) throws IOException...{
File file=new File(path);
if(!file.exists()||file.isDirectory())
throw new FileNotFoundException();
FileInputStream fis=new FileInputStream(file);
byte[] buf = new byte[1024];
StringBuffer sb=new StringBuffer();
while((fis.read(buf))!=-1)...{
sb.append(new String(buf));
buf=new byte[1024];//重新生成,避免和上次讀取的數據重復
}
return sb.toString();
}
2.利用BufferedReader讀取

在IO操作,利用BufferedReader和BufferedWriter效率會更高一點

/** *//**讀文件
* @param path
* @return
* @throws IOException
*/
public String BufferedReaderDemo(String path) throws IOException...{
File file=new File(path);
if(!file.exists()||file.isDirectory())
throw new FileNotFoundException();
BufferedReader br=new BufferedReader(new FileReader(file));
String temp=null;
StringBuffer sb=new StringBuffer();
temp=br.readLine();
while(temp!=null)...{
sb.append(temp+" ");
temp=br.readLine();
}
return sb.toString();
}

3.利用dom4j讀取xml文件

/** *//**從目錄中讀取xml文件
* @param path 文件目錄
* @return
* @throws DocumentException
* @throws IOException
*/
public Document readXml(String path) throws DocumentException, IOException...{
File file=new File(path);
BufferedReader bufferedreader = new BufferedReader(new FileReader(file));
SAXReader saxreader = new SAXReader();
Document document = (Document)saxreader.read(bufferedreader);
bufferedreader.close();
return document;
}
七.創建文件(文件夾)

1.創建文件夾 /** *//**創建文件夾
* @param path 目錄
*/
public void createDir(String path)...{
File dir=new File(path);
if(!dir.exists())
dir.mkdir();
}
2.創建新文件 /** *//**創建新文件
* @param path 目錄
* @param filename 文件名
* @throws IOException
*/
public void createFile(String path,String filename) throws IOException...{
File file=new File(path+"/"+filename);
if(!file.exists())
file.createNewFile();
}
八.刪除文件(目錄)
1.刪除文件 /** *//**刪除文件
* @param path 目錄
* @param filename 文件名
*/
public void delFile(String path,String filename)...{
File file=new File(path+"/"+filename);
if(file.exists()&&file.isFile())
file.delete();
}
2.刪除目錄
要利用File類的delete()方法刪除目錄時,必須保證該目錄下沒有文件或者子目錄,否則刪除失敗,因此在實際應用中,我們要刪除目錄,必須利用遞歸刪除該目錄下的所有子目錄和文件,然後再刪除該目錄。 /** *//**遞歸刪除文件夾
* @param path
*/
public void delDir(String path)...{
File dir=new File(path);
if(dir.exists())...{
File[] tmp=dir.listFiles();
for(int i=0;i<tmp.length;i++)...{
if(tmp[i].isDirectory())...{
delDir(path+"/"+tmp[i].getName());
}
else...{
tmp[i].delete();
}
}
dir.delete();
}
}

⑶ file類提供了用於操作文件的什麼方法

FILE *
典型的操作,如復制、移動、重命名、創建、打開、刪除和追加到文件。也可將 File 類用於獲取和設置文件屬性或有關文件創建、訪問及寫入操作

⑷ 在java中怎麼獲得,本文件的路徑

File類有兩個常用方法可以得到文件路徑一個是:getCanonicalPath(),另一個是:getAbsolutePath(),可以
通過File類的實例調用這兩個方法例如file.getAbsolutePath()其中file是File的實例對象。下面是一個具體例子:

publicclassPathTest
{
publicstaticvoidmain(String[]args)
{
Filefile=newFile(".\src\");
System.out.println(file.getAbsolutePath());
try
{
System.out.println(file.getCanonicalPath());
}catch(IOExceptione)
{
e.printStackTrace();
}
}
}

getAbsolutePath()和getCanonicalPath()的不同之處在於,getCanonicalPath()得到的是一個規范的
路徑,而getAbsolutePath()是用構造File對象的路徑+當前工作目錄。例如在上面的例子中.(點號)代表當前目錄。
getCanonicalPath()就會把它解析為當前目錄但是getAbsolutePath()會把它解析成為目錄名字(目錄名字是點號)。

下面是上面程序在我電腦上的輸出:

G:xhuojkonw.src
G:xhuojkonwsrc

⑸ 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 獲取文件夾中的文件和子文件夾的名稱,並存放到字元串數組中

⑹ file.getOriginalFilename()在java中是得到文件的完整名字嗎

file.getOriginalFilename()是得到上傳時的文件名。

⑺ java中 File類是什麼

在java中File類是可以直接操作文件的類,
它有四個構造函數:
File(String parent,String child)
File(File parent,String child)
File(URI uri)
File(String pathname)
封裝了以下主要方法:
canWrite() 返迴文件是否可以讀寫
canRead() 返迴文件是否可讀
compareTo(File pathname)檢查文件路徑間的順序
createNewFile() 當文件不存在時生成文件
delete() 從文件系統內刪除該文件
deleteOnExit() 程序順利結束時刪除文件
equals(Object obj) 檢查特定對象的路徑名是否相等
exists() 判斷文件是否存在
getAbsoluteFile() 返迴文件完整路徑的File實例
getAbsolutePath() 返迴文件完整路徑
getName() 返迴文件名稱
getParent() 返迴文件父目錄路徑
getPath() 返迴文件路徑字元串
getParentFile() 返迴文件所在文件夾的路徑
hashCode() 返迴文件哈希碼
isDirectory() 判斷該路徑指示的是否是目錄
isFile() 判斷該路徑指示的是否是文件
lastModified() 返回該文件最後更改時間標志
length() 返迴文件長度
list() 返迴文件和目錄清單
mkdir() 生成指定的目錄
renameTo(File dest) 更改文件名字
setReadOnly() 將文件設置為可讀
toString() 返迴文件狀態的字元串
toURL() 將文件的路徑字元串轉換成URL
推薦於 2017-11-25
查看全部5個回答
— 你看完啦,以下內容更有趣 —
在java中File是什麼意思?有什麼作用?
在java中File類是可以直接操作文件的類,
它有四個構造函數:
File(String parent,String child)
File(File parent,String child)
File(URI uri)
File(String pathname)

封裝了以下主要方法:
canWrite() 返迴文件是否可以讀寫
canRead() 返迴文件是否可讀
compareTo(File pathname)檢查文件路徑間的順序
createNewFile() 當文件不存在時生成文件
delete() 從文件系統內刪除該文件
deleteOnExit() 程序順利結束時刪除文件
equals(Object obj) 檢查特定對象的路徑名是否相等
exists() 判斷文件是否存在
getAbsoluteFile() 返迴文件完整路徑的File實例
getAbsolutePath() 返迴文件完整路徑
getName() 返迴文件名稱
getParent() 返迴文件父目錄路徑
getPath() 返迴文件路徑字元串
getParentFile() 返迴文件所在文件夾的路徑
hashCode() 返迴文件哈希碼
isDirectory() 判斷該路徑指示的是否是目錄
isFile() 判斷該路徑指示的是否是文件
lastModified() 返回該文件最後更改時間標志
length() 返迴文件長度
list() 返迴文件和目錄清單
mkdir() 生成指定的目錄
renameTo(File dest) 更改文件名字
setReadOnly() 將文件設置為可讀
toString() 返迴文件狀態的字元串
toURL() 將文件的路徑字元串轉換成URL

⑻ 簡述file類有哪些常用的方法及它們的作用

System.IO包含另一個類File,它的功能與FileInfo一樣,不過不同的是,File類成員為靜態。所以,使用File代替FileInfo就不必實例化一個新FileInfo對象。 那麼為什麼有時還使用FileInfo呢?因為每次通過File類調用某個方法時

⑼ c#文件操作file類

文件打開的時候,就報這個錯誤。

⑽ java中File類常用的方法有哪些

給你一個中文的吧。你不想看英文的API;File類是直接繼承Object類的。Object類的方法我就不不寫了:
欄位摘要
static String pathSeparator
與系統有關的路徑分隔符,為了方便,它被表示為一個字元串。
static char pathSeparatorChar
與系統有關的路徑分隔符。
static String separator
與系統有關的默認名稱分隔符,為了方便,它被表示為一個字元串。
static char separatorChar
與系統有關的默認名稱分隔符。
構造方法摘要
File(File parent, String child)
根據 parent 抽象路徑名和 child 路徑名字元串創建一個新 File 實例。
File(String pathname)
通過將給定路徑名字元串轉換為抽象路徑名來創建一個新 File 實例。
File(String parent, String child)
根據 parent 路徑名字元串和 child 路徑名字元串創建一個新 File 實例。
File(URI uri)
通過將給定的 file: URI 轉換為一個抽象路徑名來創建一個新的 File 實例。
方法摘要
boolean canExecute()
測試應用程序是否可以執行此抽象路徑名表示的文件。
boolean canRead()
測試應用程序是否可以讀取此抽象路徑名表示的文件。
boolean canWrite()
測試應用程序是否可以修改此抽象路徑名表示的文件。
int compareTo(File pathname)
按字母順序比較兩個抽象路徑名。
boolean createNewFile()
當且僅當不存在具有此抽象路徑名指定名稱的文件時,不可分地創建一個新的空文件。
static File createTempFile(String prefix, String suffix)
在默認臨時文件目錄中創建一個空文件,使用給定前綴和後綴生成其名稱。
static File createTempFile(String prefix, String suffix, File directory)
在指定目錄中創建一個新的空文件,使用給定的前綴和後綴字元串生成其名稱。
boolean delete()
刪除此抽象路徑名表示的文件或目錄。
void deleteOnExit()
在虛擬機終止時,請求刪除此抽象路徑名表示的文件或目錄。
boolean equals(Object obj)
測試此抽象路徑名與給定對象是否相等。
boolean exists()
測試此抽象路徑名表示的文件或目錄是否存在。
File getAbsoluteFile()
返回此抽象路徑名的絕對路徑名形式。
String getAbsolutePath()
返回此抽象路徑名的絕對路徑名字元串。
File getCanonicalFile()
返回此抽象路徑名的規范形式。
String getCanonicalPath()
返回此抽象路徑名的規范路徑名字元串。
long getFreeSpace()
返回此抽象路徑名指定的分區中未分配的位元組數。
String getName()
返回由此抽象路徑名表示的文件或目錄的名稱。
String getParent()
返回此抽象路徑名父目錄的路徑名字元串;如果此路徑名沒有指定父目錄,則返回 null。
File getParentFile()
返回此抽象路徑名父目錄的抽象路徑名;如果此路徑名沒有指定父目錄,則返回 null。
String getPath()
將此抽象路徑名轉換為一個路徑名字元串。
long getTotalSpace()
返回此抽象路徑名指定的分區大小。
long getUsableSpace()
返回此抽象路徑名指定的分區上可用於此虛擬機的位元組數。
int hashCode()
計算此抽象路徑名的哈希碼。
boolean isAbsolute()
測試此抽象路徑名是否為絕對路徑名。
boolean isDirectory()
測試此抽象路徑名表示的文件是否是一個目錄。
boolean isFile()
測試此抽象路徑名表示的文件是否是一個標准文件。
boolean isHidden()
測試此抽象路徑名指定的文件是否是一個隱藏文件。
long lastModified()
返回此抽象路徑名表示的文件最後一次被修改的時間。
long length()
返回由此抽象路徑名表示的文件的長度。
String[] list()
返回一個字元串數組,這些字元串指定此抽象路徑名表示的目錄中的文件和目錄。
String[] list(FilenameFilter filter)
返回一個字元串數組,這些字元串指定此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
File[] listFiles()
返回一個抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中的文件。
File[] listFiles(FileFilter filter)
返回抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
File[] listFiles(FilenameFilter filter)
返回抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
static File[] listRoots()
列出可用的文件系統根。
boolean mkdir()
創建此抽象路徑名指定的目錄。
boolean mkdirs()
創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。
boolean renameTo(File dest)
重新命名此抽象路徑名表示的文件。
boolean setExecutable(boolean executable)
設置此抽象路徑名所有者執行許可權的一個便捷方法。
boolean setExecutable(boolean executable, boolean ownerOnly)
設置此抽象路徑名的所有者或所有用戶的執行許可權。
boolean setLastModified(long time)
設置此抽象路徑名指定的文件或目錄的最後一次修改時間。
boolean setReadable(boolean readable)
設置此抽象路徑名所有者讀許可權的一個便捷方法。
boolean setReadable(boolean readable, boolean ownerOnly)
設置此抽象路徑名的所有者或所有用戶的讀許可權。
boolean setReadOnly()
標記此抽象路徑名指定的文件或目錄,從而只能對其進行讀操作。
boolean setWritable(boolean writable)
設置此抽象路徑名所有者寫許可權的一個便捷方法。
boolean setWritable(boolean writable, boolean ownerOnly)
設置此抽象路徑名的所有者或所有用戶的寫許可權。
String toString()
返回此抽象路徑名的路徑名字元串。
URI toURI()
構造一個表示此抽象路徑名的 file: URI。
URL toURL()
已過時。 此方法不會自動轉義 URL 中的非法字元。建議新的代碼使用以下方式將抽象路徑名轉換為 URL:首先通過 toURI 方法將其轉換為 URI,然後通過 URI.toURL 方法將 URI 裝換為 URL。

閱讀全文

與file類常用的主要方法相關的資料

熱點內容
足外翻治療方法如何治療 瀏覽:382
做小扇子的簡單方法 瀏覽:226
醫美洗臉的正確方法 瀏覽:37
腦膜炎引起癱瘓哪裡可以治療方法 瀏覽:632
橋梁搭建方法視頻 瀏覽:344
哮喘的長期治療方法 瀏覽:30
如何處理活的大龍蝦的方法 瀏覽:264
新手機密碼鎖定方法 瀏覽:579
水晶玉器真假鑒別方法 瀏覽:29
如何只用一種方法就能減肥 瀏覽:105
什麼是大學計算方法 瀏覽:703
敏感肌怎樣才能好有哪些方法 瀏覽:745
面對問題要能夠找到解決方法作文 瀏覽:379
毛豆的種植方法和技術視頻 瀏覽:435
全自動免疫熒光分析儀操作方法 瀏覽:974
如何挑選牛仔褲的裁剪方法 瀏覽:361
甲亢的常用診斷方法 瀏覽:360
天固智能門鎖安裝方法 瀏覽:460
pc肌鍛煉方法教學 瀏覽:183
t梁數量計算方法 瀏覽:144