文件的建立/检查与删除`%?65$
<%@ page contentType="text/html;charset=gb2312"%> ?Z攞*繈"g
<%@ page import="java.io.*"%> '?c
<html>
<head>
<title>文件的建立、检查与删除</title> 趺`;/'v賋?
</head> 俄 ?&
艄
< body> uc3 > 荟菗 4
< % 荲 ?7 渉恶 G
String path=request.getRealPath(""); 娆赬 ‑QL_vS
//out.println(path); 谐 i 漼 Gm€ 秼
File f=new File(path,"File.txt"); 2 雁犆 蕵 -
//out.println(f); J 冿 k?
//out.println(f.exists()); 履 E 黿 3?*-
戝 ?? 觕 Fp
if(f.exists()){// 检查 File.txt 是否存在 Ez 眆 |?O?
f.delete();// 删除 File.txt 文件 m /? 訳 ?a
out.println(path + "//File.txt 存在,已删除。 "); 惏 ~^
}else{ Q/T = 陕輠 -
f.createNewFile();// 在当前目录下建立一个名为 File.txt 的文件 鐷 ?d5x??
out.println(path + "//File.txt 不存在,已建立。 ");// 输出目前所在的目录路径 蠨 AFS` 熬 ?
} 齀 { 鑆 恞
%>
目录的建立/检查与删除?D鷾 u?
<%@ page contentType="text/html;charset=gb2312"%> |嘮?窇m<?
<%@ page import="java.io.*"%> 1S簹吱?-?
<html> oi!a5u撑k
<head> 桯煹`e,cY
<title>目录的建立/检查与删除</title> }:狃!‑?
</head> _隂Q1L?X%
<body> ?`坿*?
<% 茔%罤昬e袁
String path=request.getRealPath(""); ??b 猫U
path=path + "//Sub";//将要建立的目录路径鷰q[1]淨U诸
File d=new File(path);//建立代表Sub目录的File对象,并得到它的一个引用薽慅?R?
if(d.exists()){//检查Sub目录是否存在}璒n??fn
d.delete(); 牘煔蘱<?
out.println("Sub目录存在,已删除"); [掻薺揓N
}else{ ? x煸V澌?
d.mkdir();//建立Sub目录7躚/莾6|
K
out.println("Sub 目录不存在,已建立 "); dX 匼 "G?1
} 腹錀痌 ]6
%> 璮 x 謤斷 D 媠
< /body> o?G{CV?8
< /html> 谺
'r 蜟
如何在 JSP 中处理虚拟目录 b 翙 Ad 怉 aР
< %@ page contentType="text/html;charset=gb2312"%> |i? 鞅 R?
< %@ page import="java.io.*"%> 囟 p 桲 a.lE?
< html> 些 ?%?
< head> 4Ω?9Pu?
< title>JSP 中如何处理虚拟目录< /title> 5? 鳌 R 伉
< /head> ? 蚸 ? 皉
< body> u 悵
取得虚拟目录对应的磁盘路径< br> ? 瑝眷 wH?
Web 站点主目录的位置为< font color=#ff0000> < %=request.getRealPath("/")%> < /font> < br> 臊 = 薛 ?
JSP 网页所在的目录位置< font color=#ff0000> < %=request.getRealPath("./")%> < /font> < br> 拉 ?X 苤 j 鲴
JSP 网页所在目录上一层目录的位置< font color=#ff0000> < %=request.getRealPath("../")%> < /font> < br> 设兓 樫 2?
< /body> 0 繥曗 ) 煺 ?
< /html> 緱 )+_ 馷璤 ?
dU 荽
郍讇
?H*q? 镟 ?
文件属性的取得 #?lt; 2?
< %@ page contentType="text/html;charset=gb2312"%> 楙 cL 瓇
< %@ page import="java.util.Date,java.io.*"%> 乊 < 鯅 6 b]?
< html> [1] 鱅綔 ?t 雨
< head> ? 婲 ??O?
< title> 文件属性的取得< /title> 兀 peaCy 裧
< /head> 浧 , 鬿 ? 坎
< body> ?k?€ 韅
< % Fd 墿 2 鴀櫓
String path=request.getRealPath("/"); 犉 ?
File f=new File(path,"ReadData.txt"); ??v;l?
if(f.exists()){ g?A? 訝 .
%> ? ?n 铠 ?
< %=f.getName()%> 的属性如下:< br> < br>
文件长度为:< %=f.length()%> ? 芳娭 ? 帋
< %=f.isFile()?" 是文件 ":" 不是文件 "%> < br> 蚷 lX 雰 ` 侂
< %=f.isDirectory()?" 是目录 ":" 不是目录 "%> < br> {+ 噧妏
< %=f.canRead()?" 可读取 ":" 不可读取 "%> < br> XL? 彋 烠
< %=f.canWrite()?" 可写入 ":" 不可写入 "%> < br> I9?!Q 轀 ^[
< %=f.isHidden()?" 是隐藏文件 ":" 不是隐藏文件 "%> < br> ? 钘眚 Mq%
文件的最后修改日期为:< %=new Date(f.lastModified())%> < br> 旸鹠 ]"O 栌 ?
< % 踀 g 镃 f 藠 ?
}else{ ?
f.createNewFile();// 在当前目录下建立一个名为 ReaData.txt 的文件 [ 刕 ' 囧糛
%> vV 饑 _?*
< %=f.getName()%> 的属性如下:< br> < br> 恗 @ { "^ 鑮 ?
文件长度为:< %=f.length()%> -P 钎顣 @; 褂
< %=f.isFile()?" 是文件 ":" 不是文件 "%> < br> ? 藑慶 ?G?
< %=f.isDirectory()?" 是目录 ":" 不是目录 "%> < br> 輥獟 x 鰋
< %=f.canRead()?" 可读取 ":" 不可读取 "%> < br> u0RT% 迳 $?
< %=f.canWrite()?" 可写入 ":" 不可写入 "%> < br> 歰贿錆 ?Z?
< %=f.isHidden()?" 是隐藏文件 ":" 不是隐藏文件 "%> < br> Uh? 臘 Uy?
文件的最后修改日期为:< %=new Date(f.lastModified())%> < br> 愐 e0 笇核 q2
< % 袲厴 i 艋孳
} 輤 ?l 傓
%> 骽眩 @ 烍蒨 ?
< /body> 蛇 ??? 鏶
< /html> 穱 5d 浥汳 6Q
‑6yc],
骳 -Y 晈 ??
取出目录中文件的方法 (? 雕躿 ?
< %@ page contentType="text/html;charset=gb2312"%> 瑍 N"?
< %@ page import="java.io.*"%> 嬷
假 ?
< html> b 卙皀筐 i?
< head> Iv 瀼俚 ?
< title> 取出目录中文件的方法 -- 列出目录中的文件< /title> R{ 籔嚲 }
< /head> N
滠 ? 犟
< body> 膲 u?@ 成 ?
< % H/[
String path=request.getRealPath("/"); 颽 D?w%?
File d=new File(path);// 建立当前目录中文件的 File 对象 唌艧 ? 曋昷
File list[]=d.listFiles();// 取得代表目录中所有文件的 File 对象数组 纕屦 € 恅
痄
out.println(" < font color=#ff0000>" + path + " 目录下的文件:< /font> < br>"); ' 幗 8o?3?
for(int i=0;i < list.length;i++){ L 喜 r+ Q 膔
if(list < I>.isFile()){ 7???K 讨
out.println(list < I>.getName() + " < br>"); G? 謱 la
} ?j 諊陒歓 i
} >W 恽 SX
out.println(" < br> < font color=#ff0000>" + path + " 目录下的目录:< /font> < br>"); m? ?""
for(int i=0;i < list.length;i++){ S 躙偁 N v
if(list < I>.isDirectory()){ ?Y 芵 / 伪処
out.println(list < I>.getName() + " < br>"); ⑹ 帐瓲瀞 ?
} 1 #H 帙 t3
} 鶅 n 琗嬗苧
%> e?
< /body> 搝玣 ‑ E?
< /html> ;y 咬捄 EX?
A 鳁忀 戊 ?
? 骏 I 轎 ┽ +
判断是否为空白文件 W, 猑喔 E
< %@ page contentType="text/html;charset=gb2312"%> 驸 ?X 攳晞
< %@ page import="java.io.*"%> T?i 趯 o`
< html> 匒脗 7 嬰 :s?
< head> ? e+g
< title> 判断是否为空白文件< /title> 韵 0: 愥 0?
< /head> 皽 [1]B>
< body> 鷦 b 妄 q
< % v 滰凪 Gr 2
String path=request.getRealPath("/"); k 懤湖遗 'S
out.println(path); 緰 m
肎 ) 皑 r
FileReader fr=new FileReader(path + "//AtEnd.txt");// 建立 FileReader 对象,并实例化为 fr 婶 f? 褗 ?
// 对 FileReader 类生成的对象使用 read() 方法,可以从字符流中读取下一个字符。 PDr?M
if(fr.read()==-1)// 判断是否已读到文件的结尾 6 r~ 婹 t8?
{ 8 鏵 %E 嵝遁 ?
out.print("AtEnd.txt 文件中没有数据< br>"); 逎偽 ??%
}else{ €? 9 鳌 Q?
out.println("AtEnd.txt 文件中有数据 "); 悞漮姣 ?
} 7v 虄
1
fr.close(); 蛙蛇下 aO-
%> k 漱 ? 连 sf?
< /body> hP ?Y??
< /html> ? 辁 ?a=?
]? 送 礶 >
耆 ?n 灝 p
读取所有的文件数据 鏥 L 嚮 :? 峁
< %@ page contentType="text/html;charset=gb2312"%> r3? 憨
< %@ page import="java.io.*,java.lang.*"%> h4‑? 曇
< html> e 豖鸀 T?€ 涨
< head> 圱 M? 鸑
< title> 读取所有的文件数据< /title> ?[Z 訍倍 ?
< /head> ⊥ 逜 ??3
< body> サ y? :?
< % Z 碣 I 酗黑蛳
String path=request.getRealPath("."); 昌淅賯 93
FileReader fr=new FileReader(path + "//ReadData.txt"); 甘 ]s 懑 S?
// 关键在于读取过程中,要判断所读取的字符是否已经到了文件的末尾,并且这个字符是不是文件中的断行符,即判断该字符值是否为 13 。 舜
? 轀穭 ?
int c=fr.read();// 从文件中读取一个字符 tA 藠 ; 磻 ?x
// 判断是否已读到文件结尾 ? 詇
w 2
while(c!=-1){ 趞 ‑6 恗 ‑bv?
out.print((char)c);// 输出读到的数据 咢姮蔫犖 ?
c=fr.read();// 从文件中继续读取数据 ?` 癡 ~
悘 N
if(c==13){// 判断是否为断行字符 ?k 牸鸭禸 ?
out.print(" < br>");// 输出分行标签 D 螞 ?;:?j
fr.skip(1);// 略过一个字符 铵 T 贉 ?j
//c=fr.read();// 读取一个字符 鱑畣鋹錽帪
} B ~% 熸鼶
} CVW # 犆嬒 g
fr.close(); 觷
K 匍 r
%> KDO 襹劸 `?
< /body> ?m 伀 d 劬 ?
< /html>
一行一行读取数据溇IGUg趖k
<%@ page contentType="text/html;charset=gb2312"%> 缃g蜅狽}V?
<%@ page import="java.io.*"%> 縬j锉>ヶ欰
<html> 窆<S€牮?
<head> <怛譭?z&?
<title>文件读取</title> Z@/」蚉
</head> 1k洘榪灎怜
<body> ?_姦胸u
<% 7z 癬"P8?
String path=request.getRealPath("");//取得当前目录的路径d堇陮t蝮
FileReader fr=new FileReader(path + "//file//inc//t.txt");//建立FileReader对象,并实例化为fr ?譇搟拪曆
BufferedReader br=new BufferedReader(fr);//建立BufferedReader对象,并实例化为br /訚瀾]︱輏
String Line=br.readLine();//从文件读取一行字符串f烸??寻m
//判断读取到的字符串是否不为空鮏w神?
while(Line!=null){ w?20‑€3fh
out.println(Line + "<br>");//输出从文件中读取的数据寛P(T覾俋?
Line=br.readLine();//从文件中继续读取一行数据]L厔?瓼?
} 鎖堆?V响
br.close();//关闭BufferedReader对象n-?鹚灛-
fr.close();//关闭文件€? b鰨G;
%> 2超???
</body> 譸吀2 蕎?
</html> 2?A
?>? 焭 v
Qn? 宺 ?:
略过文件中的字符不读取 A+ r??
< %@ page contentType="text/html;charset=gb2312"%> EoQfE 腋 ?
< %@ page import="java.io.*"%> 鴴 ? 躐 1K 輭
< html> 獍 ???_
< head> "[dEM?)t?
< title> 略过字节不读取< /title> "kQ? 杯 ?
< /head> ?E 困 ! 鸵 ?
< body> 誃 ?@ 嫰 sF
< % 钪 n 艴 -? 濩
String path=request.getRealPath("."); 狲 ? 蚦
FileReader fr=new FileReader(path + "//ReadData.txt"); hk 專懯豩 ?
fr.skip(2);// 跳过 2 个字节 X? 鳬 n+?
int c=fr.read();// 读取一个字节 M 篿 Y??
while(c!=-1){ 1X<, 燔 p?
out.print((char)c); 棑豬 z ク ?
c=fr.read(); 赴 l 氟 ?i
} = 鞁 f^ GO?
fr.close(); 榇
bUR 槫 X
%> q(?&B1=?
< /body> ? 堌鏖阢 aa
< /html> 鮏 ? 肺 ?
8 硇蚴恒 7R?
'€ 墆 ? 舤蛬
将数据写入文件 v?y$G?
< %@ page contentType="text/html;charset=gb2312"%> 袠忋 LZ??
< %@ page import="java.io.*"%> <<ω 緤醖 ?
< html> 庛 忷胃 [1]l
< head> 3 愲覌 p 貌 L]
< title> 将数据写入文件< /title> H 徔 贳 u[1]
< /head> 裠 }???
< body> 穱 " 琅 @ 猐 ?
< % 廹 .? ∪ 單 ‑
String path=request.getRealPath("."); 9q.?
? 稡
FileWriter fw=new FileWriter(path + "//WriteData.txt");// 建立 FileWriter 对象,并实例化 fw 趯 Q3? 趲佧
// 将字符串写入文件 $9a, 舌吜
fw.write(" 大家好! "); h "?
‑E?
fw.write(" 本书是《 JSP 编程技巧》 "); 衷倃 ?1 阀
fw.write(" 请多多指教! "); 颮 詟 f) 娴
fw.write("email:stride@sina.com"); k/ 敶 ??g
fw.close(); q 艚桠 餂 ?
尳 ?t€
FileReader fr=new FileReader(path + "//WriteData.txt"); c 導 肨 X 麮 R
BufferedReader br=new BufferedReader(fr);// 建立 BufferedReader 对象,并实例化为 br 攞鹠 :wU44?
String Line=br.readLine(); ?Z< 笨鐟 _
// 读取一行数据 ! ェ bTб ?
out.println(Line + " < br>"); p{€?Xu 凰 ?
br.close();// 关闭 BufferedReader 对象 裎 |H 癘 `?
fr.close(); k 蟇 /!g2 煡
%> i %??T
< /body> = 鞣 !‑C 燐 b?
< /html> 后 ` 榞 ?X?
颊 郲 q 澏 ?
1$+ 扯 > 6?
将写入文件的数据分行 ?? 眂 FMlq
< %@ page contentType="text/html;charset=gb2312"%> 撻裇 ? 羉 ?
< %@ page import="java.io.*"%> ?
< html> 愧 ? 蕳 K.?
< head> ??9
< title> 将写入文件的数据分行< /title> ?{8 逭 n?
< /head> } 毬桷沯 呲
< body> 誇 ┽ ㄣ翑 ~&
< % 5 呺 / 呦 wGiU
String path=request.getRealPath("."); 0 爁 < 馄 h?
FileWriter fw=new FileWriter(path + "//WriteData.txt"); 溚 +~r[?
BufferedWriter bw=new BufferedWriter(fw); N 薑 /? 喩 q
bw.write(" 大家好! "); ?
bw.write(" 本书是《 JSP 编程技巧》。 "); ? 塻 K 耎 |
bw.newLine();// 断行 葸 思 /‑ 軍 ?
bw.write(" 请多多指教! "); 摹 ? 戱 €?
bw.newLine();// 断行 3?VTP 梇 <}"
bw.write("email: stride@sina.com"); ?N/4 瞵昇 Q
bw.flush();// 将数据更新至文件 褌 ? 戒悈 ‑
fw.close();// 关闭文件流 ' 劗鎐 ` D 龍
out.println(" 写入文件内容为:< br>"); ? 繓倦 ?X
FileReader fr=new FileReader(path + "//WriteData.txt"); 餬嘴 ?yJh?
BufferedReader br=new BufferedReader(fr); W 蜯飱 b 蝡 i-
String Line=br.readLine();// 读取一行数据 炊 p 肖 B 秙 nb
while(Line!=null){ Jma 胒 NK?
out.println(Line + " < br>"); i^ 战 P 譭 ?
Line=br.readLine(); C 精睷 ? 潷 &
} # 鄚 3 畵鄋
fr.close(); b 焓虤 ?€?
%>
纵 ? 翙酵 ?
< /body> 畽 ? 蝛 6&s?
< /html> u‑?1Q?
如何将数据追加写入到文件 F?Y 貢遻 ?
< %@ page contentType="text/html;charset=gb2312"%> = 堀 Z^=s1#?
< %@ page import="java.io.*"%> ? 窴鐚
< html> 鍃 K 社 € 蘜 m
< head> ! 擂 1 錑巭 lX
< title> 将写入文件的数据分行< /title> k
蠒蠿 柃
< /head> ?k 兄櫚 923
< body> d3 訸 ] 穅 ?
< % 衪 _) 禽 (?
String path=request.getRealPath("."); 岈 { %}ee
RandomAccessFile rf=new RandomAccessFile(path + "//WriteData.txt","rw");// 定义一个类 RandomAccessFile 的对象,并实例化 WK?F
rf.seek(rf.length());// 将指针移动到文件末尾 un 钸盇 E ?
rf.writeBytes("/nAppend a line to the file!"); 鳌贫 % 肻
;
rf.close();// 关闭文件流 2 日绰衿 ?
out.println(" 写入文件内容为:< br>"); 曬烡 b?q?
FileReader fr=new FileReader(path + "//WriteData.txt"); Mb?+ 鲸晰 ?
BufferedReader br=new BufferedReader(fr);// 读取文件的 BufferedRead 对象 € 韻 /z|?
String Line=br.readLine(); ? 昹 B- 醦 ?
while(Line!=null){ 盙 {й‑lZ 燃
out.println(Line + " < br>"); 蘥 ? ╂ 賓 Y?
Line=br.readLine(); 4%&k 旉 ?}
} <@?Z 袃 *
fr.close();// 关闭文件 NW ? 筵噗
%> 媿朇 w# 萛 ?
< /body> E?] 订薲 ?
< /html> < /I> < /I> < /I> < /I>