QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3696|回复: 0
打印 上一主题 下一主题

[网摘]Java加油站:讲解文件的建立与删除

[复制链接]
字体大小: 正常 放大
kampoo        

85

主题

2

听众

400

积分

升级  33.33%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-12-30 20:22 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<DIV class=news_content>首先取得当前的磁盘路径,指定要建立的文件的路径,再进行检查,如果文件不存在,则建立这个文件,如果文件存在,则删除这个文件。<BR><BR>CreateDelete.jsp<BR><BR>
: j4 M; d. T9 c8 \% L6 a: B% T6 o<CENTER><CCID_NOBR>
: Q! _* T# ]8 u3 |$ p8 l# {<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
! [( g" Q  _: W  `+ z  X
- }$ `8 l/ D- s5 D" I& R' n<TR>; `# @. l9 |# `3 e/ m
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;: b' h9 _0 E* A8 k' O5 y
&lt;%@ page import="java.io.*" %&gt;  ^/ H& f0 ^  t& o
&lt;%@ page language="java" %&gt;
9 |* ]9 ~8 X4 o) c) \2 w1 [2 u* K9 S&lt;HTML&gt;
! ~$ U! m! b0 o&lt;HEAD&gt;. J; \( }! N) \# v5 k: A6 ~5 |- K
&lt;TITLE&gt;文件的建立与删除&lt;/TITLE&gt;
! x- Y* m/ ]0 O8 o4 z* v# H&lt;/HEAD&gt;
7 m" O% M+ v3 _. u&lt;BODY&gt;: n' |- `0 t' W$ M7 q( c
&lt;CENTER&gt;" u4 D9 D: T8 N4 L, g' @
&lt;FONT SIZE = 5 COLOR = blue&gt;文件的建立与删除&lt;/FONT&gt;/ B3 x8 J" Z6 W/ A0 q
&lt;/CENTER&gt;
+ r7 T. M- G, b1 h7 S  z0 T& p&lt;BR&gt;5 H  a6 ^  w+ }4 B$ j& O
&lt;HR&gt;  t4 ~" Y0 x( @& i3 K. J
&lt;BR&gt;( ^0 Q: _0 F! r+ f3 O# U5 e
&lt;%
) S6 `" \8 k3 V! C# o) F//建立代表目前目录位置中File.txt档的File变量, 并由fileName变量变数引用
4 B) B' n. K2 E, Z. BString path = request.getRealPath("/jsphosting/wenjian");
, I3 B' q7 O- y# X: KFile fileName = new File(path, "File.txt");. \2 w+ W5 V0 `; ^: a$ N
//检查File.txt是否存在' `4 P4 ~9 S( N- w2 L
if(fileName.exists())7 S& J" R# Z2 a7 [1 M
{
' z5 N5 d1 C/ `9 G. ?9 U//删除File.txt档: x5 |6 s; X, x! ~6 H
fileName.delete();
+ _& G! ]: h5 d% o, W$ p//输出目前所在的目录路径
5 S/ Z* j! Z* x' h" k6 d4 C3 n- eout.println(path + "\File.txt");/ G- _2 S; q! a) a6 r- D
%&gt;: v. U8 n0 `. H- `) ]& p$ e
&lt;FONT SIZE = 4 COLOR = red&gt;存在&lt;/FONT&gt;, 已完成2 i' d/ ~  H1 ]8 @4 @* X
&lt;FONT SIZE = 4 COLOR = red&gt;删除&lt;/FONT&gt;
& N4 N, p' n+ W" X6 x&lt;%( z' d9 a6 y' x
}, a, B1 s  m8 ]. |0 @3 J- O
else
& S- @2 {; }  A5 Q" u{" u, W& b8 ?  M0 J9 c
//在目前的目录下建立一个名为File.txt的文字档
3 j) T) B% g' Q4 [# U2 @fileName.createNewFile();
' |. [2 e3 a) Q. q; [//输出目前所在的目录路径
& ?' o( n( n0 k9 x, r' xout.println(path + "\File.txt");
/ u5 C4 V9 r, Y  \/ Q. [" q$ R%&gt;6 o- N- ^$ o! B/ v' ?: ?  J
&lt;FONT SIZE = 4 COLOR = red&gt;不存在&lt;/FONT&gt;, 已完成$ Y) X$ ?% P' {) p; Q
&lt;FONT SIZE = 4 COLOR = red&gt;建立&lt;/FONT&gt;! B) S" Y& z( w6 P9 a
&lt;%9 x: \9 o/ R" K5 p) P9 |0 \
}
* s8 T) V$ |7 T! I%&gt;. I* H! |* V3 z' b
&lt;/BODY&gt;; m6 d5 N6 f4 E4 r
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>显示目录中的文件 <BR><BR>首先建立要显示的目录的FILE对象,然后调用LISTFILES方法,该方法返回一个FILE对象数组,显示数组中的所有元素即可。 <BR><BR>ListFile.jsp <BR><BR>
  P1 b3 x2 W: z  @<CENTER><CCID_NOBR>
% k2 H2 Y: q* A& N+ v. Y* x' v<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>. {7 f7 c5 }& G7 z2 S
: I! a% v$ M* F" I6 ?5 H, j! x
<TR>
- y; a' n& G( V& O) G" ]  L& Z<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
1 [: U5 w; O0 |5 V&lt;%@ page language="java" %&gt;7 h1 z3 ?1 o" @2 K3 P' D& \
&lt;%@ page import="java.io.*" %&gt;
1 Y4 u9 R5 Y; l2 ^+ d&lt;HTML&gt;+ D2 w7 V* \9 `7 k* a
&lt;HEAD&gt;& |! J* R0 t# V1 S7 q) y
&lt;TITLE&gt;取得目录中的文件&lt;/TITLE&gt;7 L4 s; W7 h# [2 w9 M2 R0 e/ b$ ?
&lt;/HEAD&gt;
4 V/ x7 d) a4 V# k3 k&lt;BODY&gt;4 x" c- q* [# B8 Z" |
&lt;CENTER&gt;9 ]% R& i9 Z6 X
&lt;FONT SIZE = 5 COLOR = blue&gt;取得目录中的文件&lt;/FONT&gt;7 `% g4 Z8 i. H! p
&lt;/CENTER&gt;3 W0 M2 Y7 Z- |" c6 }" N, S8 P0 ]! B
&lt;BR&gt;6 O: m6 ^1 q* E
&lt;HR&gt;0 E- ^; F( J  v- `6 @
&lt;BR&gt;
, H7 W4 S$ l2 \&lt;%/ e- j5 J5 {7 m# z
//取得目前目录的磁盘目录
9 b) e" h6 e' l. CString path = request.getRealPath("/jsphosting/wenjian");
4 o8 ~6 p* k% m7 e6 Y2 P5 Z//建立代表目前目录位置的d变量
& |3 T% c& C9 s2 gFile d = new File(path);
+ Q* @2 _3 f' x, f/ h" B//取得代表目录中所有文件
- ?- G  _! r, q4 Z7 _) iFile list[] = d.listFiles();" y7 x/ K, {7 b9 z8 i* C
%&gt;/ V& ~! a0 \' b$ ]: l4 M' s
在&lt;Font color = red&gt;&lt;%= path%&gt;&lt;/Font&gt;目录下的文件有(每个文件有其相应的功能)&lt;BR&gt;
: Y* r$ q- [& _9 {8 x; S&lt;Font color = blue&gt;. f8 t4 M% V. V% N; ^8 a
&lt;ul&gt;/ W# h8 O3 H- \3 i- n
&lt;%5 x! n- V1 }0 ?8 h
for(int i=0; i &lt; list.length; i++)3 S! L) `' j3 E, V
{
8 b$ y. Y$ K7 |( v! b  R* R* H: \%&gt;! O, c7 J8 l( f" W/ Z# o, G
&lt;li&gt;&lt;%= list.getName() %&gt;&lt;BR&gt; 6 d0 J8 B; K6 f* v3 g
&lt;%9 {, [/ g2 D. i; [' ?+ E: U# \7 o
}
1 o. B3 j% @( d( D$ Y* O0 o%&gt;
  s8 I( }1 d" ^3 K" P/ d9 ~&lt;/ul&gt;6 \' l: u0 m$ m; X+ S' @$ h
&lt;/Font&gt;
/ l- ~% U: b4 A9 s' d" L5 k&lt;/BODY&gt;3 L+ }5 e! b8 L! k9 N* G0 x0 M( K2 B: b
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>读取文件中的字符 <BR><BR>直接调用FILEREADER对象的READ()方法读取所要显示的字符 <BR><BR>ReadAll.jsp <BR><BR>0 h9 B' _9 `# S/ w& N7 ?9 G1 }
<CENTER><CCID_NOBR>* U7 |/ O; a% H2 [7 N) Y* w' G7 j; F
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
2 e6 o# W6 a" v# O5 h. s" g+ Y
+ k# X8 t& u9 v9 e; [<TR>4 A1 j- B' x% u+ |2 N4 V
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312" %&gt;4 ^4 A" Y1 q: t1 y5 b
&lt;%@ page language="java" %&gt;
9 T/ K& |7 U2 l% `&lt;%@ page import="java.io.*" %&gt;
; C7 P+ E" x) J' i8 T&lt;HTML&gt;% L; T, S/ I. r1 z+ Q
&lt;HEAD&gt;
+ I  ]: w  O& t&lt;TITLE&gt;读取文件内容&lt;/TITLE&gt;
6 x1 M" ~& C6 Q& @+ B&lt;/HEAD&gt;
9 t  _. z$ G. H& ]) X2 K7 m&lt;BODY&gt;
! o* U% l3 ]/ W( Q&lt;CENTER&gt;) M  R: W% k# i
&lt;FONT SIZE = 5 COLOR = blue&gt;读取文件内容&lt;/FONT&gt;
' V0 d( C( l" Q+ A&lt;/CENTER&gt;& {8 o, Q* `8 s2 N+ i: Z
&lt;BR&gt;3 H0 O, i5 _5 ^
&lt;HR&gt;7 T# O) E! B$ L7 c5 J
&lt;BR&gt;  v% z6 `' {8 z: T8 X
&lt;%
, A# E6 J* D2 H( E1 T2 n# f' ?, C5 XString path = request.getRealPath("/jsphosting/wenjian");
" P2 a( a2 z3 \6 v//取得目前目录在伺服端的实际位置' I1 s+ l: `2 P* s
FileReader fr = new FileReader(path + "\File.txt");
9 }, j; V0 x! z1 L4 L //建立FileReader变量,并设定由fr变量变数引用
8 ]" v1 `5 @2 I' x" Z/ J% H% e7 qint c = fr.read();
9 b4 [0 }4 S* {+ w6 _# Q) c$ i //从文件中读取一个字节& w. V  W* u3 r) _: R2 N  I
while(c != -1)
: H, ~! i! j0 |: u4 V# K- G//判断是否已读到文件的结尾+ V' S; V" f2 d4 e: k& Q5 v3 {$ L
{6 K% ]: o' @& M$ C$ U
out.print((char)c);
6 U3 T3 d$ x1 z//输出读取到的数据
5 [6 Z/ Y  p  Zc = fr.read(); , G3 q7 R5 U5 M  c3 L
//从文件中读取数据6 S; ^$ U: P% H& W3 M; p
if(c == 13) $ S# u: Z" I, M: U: R* j# _
//判断是否为断行字节
: G, q, E8 [% V. ~- |  O{
$ h4 y3 v' t  w, r0 zout.print("&lt;BR&gt;");& \1 ~* u# A6 _. o
//输出分行标签9 ~( X8 ?# z1 S$ d
fr.skip(1);
5 S0 K% L6 p9 b' V: W6 d//略过一个字节2 E- A5 `# ^. Q6 Z$ c+ x. W6 Y
c = fr.read(); % y! J. F) {- M* `
//读取一个字节& ~; x! w0 X% D6 j8 C
}
7 `5 f' g. C0 z4 U}
9 f( g% q, a9 @: I( J4 C1 Y; e! }//关闭文件
2 z. i7 K' v* {9 W: |fr.close();. n, _4 t5 t* O5 y
%&gt;0 w5 ^9 [1 F6 g3 H7 F. |* a
&lt;/BODY&gt;7 ~1 K1 v) a' c% p% t/ }
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>将数据写入文件 <BR><BR>通过调用FILEWRITER对象的WRITE()方法向文件中写入数据 <BR><BR>Write.jsp <BR><BR>
$ f' c. ]7 Y8 _1 T9 |" Q<CENTER><CCID_NOBR>0 C( F7 F1 B8 z5 t: Q. @
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
2 `. t: {/ L2 \$ V
  [1 b* F5 a2 L; A1 w<TR>. F2 M" F! ?' L9 x
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;& B& _  i& f) r/ o
&lt;%@ page language="java" %&gt;
% C" Y2 [+ c; z" U  S& ]&lt;%@ page import="java.io.*" %&gt;
5 K6 k5 m6 e- W& Q8 E1 r&lt;HTML&gt;
+ c, d4 P! ?2 q) C& d2 e&lt;HEAD&gt;1 y, m2 U( c: i0 C3 x1 p; [
&lt;TITLE&gt;将数据写入文件&lt;/TITLE&gt;" @3 m1 N- ]5 c; ^, v' m
&lt;/HEAD&gt;
) B0 U) l2 F! Q' [; H2 R&lt;BODY&gt;
% L6 D. C9 u, c) G$ @" }$ ?&lt;CENTER&gt;1 Q% o8 n, y" v
&lt;FONT SIZE = 5 COLOR = blue&gt;将数据写入文件&lt;/FONT&gt;. o; _  B% ]# Z) ~0 t
&lt;/CENTER&gt;. x/ N/ |; q5 b9 c1 u6 o
&lt;BR&gt;- n' e- f  a1 \7 j& Y; z' @" U1 K
&lt;HR&gt;
/ e# Z0 {3 U% N6 v' O8 J8 n& a&lt;BR&gt;
& x) a1 L  h, [: z&lt;%+ Y9 u. h2 z4 A6 Z7 u( c
String path = request.getRealPath("/jsphosting/wenjian");
+ I# L4 N8 R( Z//取得目前目录在伺服端的实际位置
: u& U- G3 Y. b  SFileWriter fw = new FileWriter(path + "\File.txt"); ) L8 u& t, {- |, M7 {) [
//建立FileWrite对象,并设定由fw对象变量引用
; K3 ^  N$ J- n2 W5 t% x: I//将字串写入文件
+ ~) |* W4 x$ a. H$ |; Q2 ]fw.write("大家好!");
; u0 u. W  z4 f$ p* vfw.write("祝大家学习jsp愉快!");
+ C, _0 ?( a/ H$ Cfw.write("希望大家能够深入了解jsp技术!");; {3 x* A# L+ k. P3 u
fw.close();
( O- I* U* h$ M) o. a//关闭文件1 F" q3 U0 Z2 D3 U9 v8 b
%&gt;
* i* \* u. R  _2 I. d6 c; ~&lt&gt;写入文件内容为&lt;/P&gt;. @# ^4 M8 T* A" b6 n% g
&lt;FONT SIZE = 4 COLOR = red&gt;8 x7 v1 T& r. q& C
&lt;%1 I2 V7 q4 i8 v2 f: J. Y6 s
FileReader fr = new FileReader(path + "\File.txt"); 0 U) ^/ e* K) o! V" _
//建立FileReader对象,并设定由fr对象变量引用3 d# {5 b$ u( J; C
BufferedReader br = new BufferedReader(fr); # S$ ~  H( b! c# x* d( T
//建立BufferedReader对象,并设定由br对象变量引用
0 u' @9 y6 A* H& J: U$ p/ ~4 sString Line = br.readLine(); # B5 S, B, b; ~: T+ K5 Z2 C( d
//读取一行数据0 t3 l. [0 H: }0 w
out.println(Line + "&lt;BR&gt;"); ; P" e/ S+ e4 _" F; X( D
//输出读取得的数据
' J1 Z# f7 e- ]! xbr.close();
2 ?. q' v, p" k# i4 E //关闭BufferedReader对象) j2 y; e6 {: \4 d2 n" I
fr.close();' _2 ~# M- Q5 X
//关闭文件2 H6 s( {9 T) a( y% ?) H
%&gt;' r# E, Z& I0 J/ u; i9 `. z2 d7 B7 d
&lt;/FONT&gt;! B: A1 r' V! e& C( l6 K) L% e
&lt;/BODY&gt;, n4 c4 }) O- e6 Z6 e# g: ~
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CENTER></DIV><BR><BR>转载自: <a href="http://www.itzero.net/Article/learner/2005_10/3379.html" target="_blank" >http://www.itzero.net/Article/learner/2005_10/3379.html</A><BR>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2025-8-13 16:04 , Processed in 0.469475 second(s), 51 queries .

回顶部