程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java文件操作大全(1)

Java文件操作大全(1)

編輯:關於JAVA
本文匯集常用文件操作方法,包括文件的建立/檢查與刪除,目錄的建立/檢查與刪除,取出目錄中文件,文件屬性的取得,逐行讀取數據等等。

文件的建立/檢查與刪除

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>文件的建立、檢查與刪除</title>

</head>

<body>

<%

String path=request.getRealPath("");

//out.println(path);

File f=new File(path,"File.txt");

//out.println(f);

//out.println(f.exists());

if(f.exists()){//檢查File.txt是否存在

f.delete();//刪除File.txt文件

out.println(path + "\\File.txt 存在,已刪除。");

}else{

f.createNewFile();//在當前目錄下建立一個名為File.txt的文件

out.println(path + "\\File.txt 不存在,已建立。");//輸出目前所在的目錄路徑

}

%>

目錄的建立/檢查與刪除

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>目錄的建立/檢查與刪除</title>

</head>

<body>

<%

String path=request.getRealPath("");

path=path + "\\Sub";//將要建立的目錄路徑

File d=new File(path);//建立代表Sub目錄的File對象,並得到它的一個引用

if(d.exists()){//檢查Sub目錄是否存在

d.delete();

out.println("Sub目錄存在,已刪除");

}else{

d.mkdir();//建立Sub目錄

out.println("Sub目錄不存在,已建立");

}

%>

</body>

</Html>

如何在JSP中處理虛擬目錄

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>JSP中如何處理虛擬目錄</title>

</head>

<body>

取得虛擬目錄對應的磁盤路徑<br>

Web站點主目錄的位置為<font color=#ff0000><%=request.getRealPath("/")%></font><br>

JSP網頁所在的目錄位置<font color=#ff0000><%=request.getRealPath("./")%></font><br>

JSP網頁所在目錄上一層目錄的位置<font color=#ff0000><%=request.getRealPath("../")%></font><br>

</body>

</Html>

文件屬性的取得

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="java.util.Date,Java.io.*"%>

<Html>

<head>

<title>文件屬性的取得</title>

</head>

<body>

<%

String path=request.getRealPath("/");

File f=new File(path,"ReadData.txt");

if(f.exists()){

%>

<%=f.getName()%>的屬性如下:<br><br>

文件長度為:<%=f.length()%>

<%=f.isFile()?"是文件":"不是文件"%><br>

<%=f.isDirectory()?"是目錄":"不是目錄"%><br>

<%=f.canRead()?"可讀取":"不可讀取"%><br>

<%=f.canWrite()?"可寫入":"不可寫入"%><br>

<%=f.isHidden()?"是隱藏文件":"不是隱藏文件"%><br>

文件的最後修改日期為:<%=new Date(f.lastModifIEd())%><br>

<%

}else{

f.createNewFile();//在當前目錄下建立一個名為ReaData.txt的文件

%>

<%=f.getName()%>的屬性如下:<br><br>

文件長度為:<%=f.length()%>

<%=f.isFile()?"是文件":"不是文件"%><br>

<%=f.isDirectory()?"是目錄":"不是目錄"%><br>

<%=f.canRead()?"可讀取":"不可讀取"%><br>

<%=f.canWrite()?"可寫入":"不可寫入"%><br>

<%=f.isHidden()?"是隱藏文件":"不是隱藏文件"%><br>

文件的最後修改日期為:<%=new Date(f.lastModifIEd())%><br>

<%

}

%>

</body>

</Html>

取出目錄中文件的方法

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>取出目錄中文件的方法--列出目錄中的文件</title>

</head>

<body>

<%

String path=request.getRealPath("/");

File d=new File(path);//建立當前目錄中文件的File對象

File list[]=d.listFiles();//取得代表目錄中所有文件的File對象數組

out.println("<font color=#ff0000>" + path + "目錄下的文件:</font><br>");

for(int i=0;i<list.length;i++){

if(list<I>.isFile()){

out.println(list<I>.getName() + "<br>");

}

}

out.println("<br><font color=#ff0000>" + path + "目錄下的目錄:</font><br>");

for(int i=0;i<list.length;i++){

if(list<I>.isDirectory()){

out.println(list<I>.getName() + "<br>");

}

}

%>

</body>

</Html>

判斷是否為空白文件

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>判斷是否為空白文件</title>

</head>

<body>

<%

String path=request.getRealPath("/");

out.println(path);

FileReader fr=new FileReader(path + "\\AtEnd.txt");//建立FileReader對象,並實例化為fr

//對FileReader類生成的對象使用read()方法,可以從字符流中讀取下一個字符。

if(fr.read()==-1)//判斷是否已讀到文件的結尾

{

out.print("AtEnd.txt文件中沒有數據<br>");

}else{

out.println("AtEnd.txt文件中有數據");

}

fr.close();

%>

</body>

</Html>

<B>讀取所有的文件數據</B>

<ccid_nobr>

<table width="400" border="1" cellspacing="0" cellpadding="2"

bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">

<tr>

<td bgcolor="e6e6e6" class="code" >

<pre><ccid_code> <%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="java.io.*,Java.lang.*"%>

<Html>

<head>

<title>讀取所有的文件數據</title>

</head>

<body>

<%

String path=request.getRealPath(".");

FileReader fr=new FileReader(path + "\\ReadData.txt");

//關鍵在於讀取過程中,要判斷所讀取的字符是否已經到了文件的末尾,

並且這個字符是不是文件中的斷行符,即判斷該字符值是否為13。

int c=fr.read();//從文件中讀取一個字符

//判斷是否已讀到文件結尾

while(c!=-1){

out.print((char)c);//輸出讀到的數據

c=fr.read();//從文件中繼續讀取數據

if(c==13){//判斷是否為斷行字符

out.print("<br>");//輸出分行標簽

fr.skip(1);//略過一個字符

//c=fr.read();//讀取一個字符

}

}

fr.close();

%>

</body>

</Html>

一行一行讀取數據

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>文件讀取</title>

</head>

<body>

<%

String path=request.getRealPath("");//取得當前目錄的路徑

FileReader fr=new FileReader(path + "\\file\\inc\\t.txt");//建立FileReader對象,並實例化為fr

BufferedReader br=new BufferedReader(fr);//建立BufferedReader對象,並實例化為br

String Line=br.readLine();//從文件讀取一行字符串

//判斷讀取到的字符串是否不為空

while(Line!=null){

out.println(Line + "<br>");//輸出從文件中讀取的數據

Line=br.readLine();//從文件中繼續讀取一行數據

}

br.close();//關閉BufferedReader對象

fr.close();//關閉文件

%>

</body>

</Html>

略過文件中的字符不讀取

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>略過字節不讀取</title>

</head>

<body>

<%

String path=request.getRealPath(".");

FileReader fr=new FileReader(path + "\\ReadData.txt");

fr.skip(2);//跳過2個字節

int c=fr.read();//讀取一個字節

while(c!=-1){

out.print((char)c);

c=fr.read();

}

fr.close();

%>

</body>

</Html>

將數據寫入文件

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>將數據寫入文件</title>

</head>

<body>

<%

String path=request.getRealPath(".");

FileWriter fw=new FileWriter(path + "\\WriteData.txt");//建立FileWriter對象,並實例化fw

//將字符串寫入文件

fw.write("大家好!");

fw.write("本書是《JSP編程技巧》");

fw.write("請多多指教!");

fw.write("email:[email protected]");

fw.close();

FileReader fr=new FileReader(path + "\\WriteData.txt");

BufferedReader br=new BufferedReader(fr);//建立BufferedReader對象,並實例化為br

String Line=br.readLine();

//讀取一行數據

out.println(Line + "<br>");

br.close();//關閉BufferedReader對象

fr.close();

%>

</body>

</Html>

將寫入文件的數據分行

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>將寫入文件的數據分行</title>

</head>

<body>

<%

String path=request.getRealPath(".");

FileWriter fw=new FileWriter(path + "\\WriteData.txt");

BufferedWriter bw=new BufferedWriter(fw);

bw.write("大家好!");

bw.write("本書是《JSP編程技巧》。");

bw.newLine();//斷行

bw.write("請多多指教!");

bw.newLine();//斷行

bw.write("email: [email protected]");

bw.flush();//將數據更新至文件

fw.close();//關閉文件流

out.println("寫入文件內容為:<br>");

FileReader fr=new FileReader(path + "\\WriteData.txt");

BufferedReader br=new BufferedReader(fr);

String Line=br.readLine();//讀取一行數據

while(Line!=null){

out.println(Line + "<br>");

Line=br.readLine();

}

fr.close();

%>

</body>

</Html>

如何將數據追加寫入到文件

<%@ page contentType="text/Html;charset=gb2312"%>

<%@ page import="Java.io.*"%>

<Html>

<head>

<title>將寫入文件的數據分行</title>

</head>

<body>

<%

String path=request.getRealPath(".");

RandoMaccessFile rf=new RandomAccessFile(path + "\\WriteData.txt","rw");

//定義一個類RandomAccessFile的對象,並實例化

rf.seek(rf.length());//將指針移動到文件末尾

rf.writeBytes("\nAppend a line to the file!");

rf.close();//關閉文件流

out.println("寫入文件內容為:<br>");

FileReader fr=new FileReader(path + "\\WriteData.txt");

BufferedReader br=new BufferedReader(fr);//讀取文件的BufferedRead對象

String Line=br.readLine();

while(Line!=null){

out.println(Line + "<br>");

Line=br.readLine();

}

fr.close();//關閉文件

%>

</body>

</Html>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved