QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3949|回复: 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>
  U$ a8 x& x6 |7 }6 y+ Y4 }<CENTER><CCID_NOBR>
8 ^+ o9 @7 q8 Y, h$ F<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
/ D2 b* D- u# a' i+ f0 K
/ H  D* _( i" o( F: m6 C- r" L<TR># p5 v$ x8 Y: b% K& R$ X
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;# N+ \7 o, }  t
&lt;%@ page import="java.io.*" %&gt;: [) U$ \) _' i: d9 ]. \3 J
&lt;%@ page language="java" %&gt;
8 D0 d) k( Y" H. o3 M&lt;HTML&gt;, [) v% p# {) G/ I# _
&lt;HEAD&gt;
: q4 [0 d1 U* |, ?! u" W* @% c4 }&lt;TITLE&gt;文件的建立与删除&lt;/TITLE&gt;! I# A1 ~+ [' X+ b  b
&lt;/HEAD&gt;2 H. L6 N6 C+ ~1 Z
&lt;BODY&gt;3 K5 {, I5 F$ m. N: j; P/ v+ C( I2 \! w
&lt;CENTER&gt;, ^7 F  G! _( s' f0 Q
&lt;FONT SIZE = 5 COLOR = blue&gt;文件的建立与删除&lt;/FONT&gt;4 Q- x2 Y, M: v7 v% q
&lt;/CENTER&gt;+ ]- Q0 b7 Q$ o- K) e
&lt;BR&gt;2 i) ~2 L/ S+ S1 _! [
&lt;HR&gt;
/ P  K' H( w6 e# |' _; ~% p&lt;BR&gt;, Q5 R- Y4 T' N5 O
&lt;%/ P6 I% y2 V$ @
//建立代表目前目录位置中File.txt档的File变量, 并由fileName变量变数引用
8 O6 {) o% R$ w8 sString path = request.getRealPath("/jsphosting/wenjian");+ a- f  Y, |& L% |5 O- ]7 E
File fileName = new File(path, "File.txt");% S# v! P  |5 F% h+ j+ q/ F
//检查File.txt是否存在; \8 s) H0 D0 L1 d1 n5 L' d
if(fileName.exists())% m. ]$ V9 g& ]9 t& \* K+ ]! O. s1 K3 c
{+ u) G. u3 B6 q' L& s
//删除File.txt档: l1 o; u# A2 _& }# c
fileName.delete();
  [% R2 p$ f# R. W6 i, a//输出目前所在的目录路径: `7 Q1 j/ U, r
out.println(path + "\File.txt");' V5 G, b5 {4 H1 B2 I/ n
%&gt;
8 [1 D& R5 a  J&lt;FONT SIZE = 4 COLOR = red&gt;存在&lt;/FONT&gt;, 已完成; @! E/ a# J# D& E1 B" a; r9 `
&lt;FONT SIZE = 4 COLOR = red&gt;删除&lt;/FONT&gt;
3 u1 A" O1 c. K0 `) e2 f( A&lt;%
+ r, w6 ^; ^- ]0 C% a}
* A; X, h6 x3 V7 v  [' Lelse2 w  r: ?, u9 ?$ P& T! W
{4 g- i3 Y4 Y) z
//在目前的目录下建立一个名为File.txt的文字档
8 `. r/ ^) n3 w8 J+ XfileName.createNewFile();3 J# m7 M! f( _+ U% O( r6 K
//输出目前所在的目录路径
6 E9 M  t- D( ]: R+ X7 wout.println(path + "\File.txt");9 q8 T" F8 t: q  |- A, H8 }
%&gt;9 p- o1 l+ v6 n' t  l% g3 P, _. ?( y
&lt;FONT SIZE = 4 COLOR = red&gt;不存在&lt;/FONT&gt;, 已完成7 \( f: D  V( h. a( s4 ^
&lt;FONT SIZE = 4 COLOR = red&gt;建立&lt;/FONT&gt;& ]4 q: B. o5 s; G) |
&lt;%$ d3 c& N7 b6 U: y0 ?7 L: g$ R! Z. u
}
0 c! X7 j* R$ ]% l%&gt;
: ]( Q( J) r; k; y&lt;/BODY&gt;) y* M  c0 `/ v+ z: {; G
&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>
+ @5 P- B- N8 o: A6 Q& m" T  K, T<CENTER><CCID_NOBR>
, o0 O. E' a2 l8 P: t1 }4 a<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>; m4 S$ X: `2 b6 S: k: A' _

1 U8 s! O! k) {<TR>* B8 X9 g8 x4 l% {' e2 K% I# Q1 y' D
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
4 ?* C& B5 E  ~2 H" B8 {&lt;%@ page language="java" %&gt;
  a  [3 H( D5 o: s/ `% z&lt;%@ page import="java.io.*" %&gt;- H& g( }8 `& C6 v5 Z7 b
&lt;HTML&gt;
( F& {- U" I% }1 F6 Q2 Z+ Y&lt;HEAD&gt;  _8 r; x7 _0 U
&lt;TITLE&gt;取得目录中的文件&lt;/TITLE&gt;
) G' e4 H/ C. F) b&lt;/HEAD&gt;5 u( y) R7 C  p7 Q; c. d
&lt;BODY&gt;
$ b6 q- N2 U# B* \# m3 x&lt;CENTER&gt;
: D4 ^' e# b3 M&lt;FONT SIZE = 5 COLOR = blue&gt;取得目录中的文件&lt;/FONT&gt;' h' J4 S4 ^& b* b: M" x
&lt;/CENTER&gt;/ W- s( z: I. D% H9 C( F. e0 D8 h
&lt;BR&gt;/ r+ v6 E5 ^: g
&lt;HR&gt;
) f' t/ v/ b3 G8 j' X2 k; a&lt;BR&gt;: ~$ I& `0 U! D0 s- r* w" e& j
&lt;%) j$ d+ m  U6 W5 b. ]' I* @/ q( H8 ~
//取得目前目录的磁盘目录
! B/ o3 U/ v2 t5 {+ V3 JString path = request.getRealPath("/jsphosting/wenjian");# @8 f9 ~. I! k: K( v6 G
//建立代表目前目录位置的d变量, Q4 N8 `5 O4 p) p5 A7 E3 \
File d = new File(path);4 `$ j) \- _% B$ U" {5 e% w& {
//取得代表目录中所有文件
6 y/ K9 W! l+ X; }/ x- GFile list[] = d.listFiles();+ N( q" R1 b( H+ ^) B
%&gt;5 B- ?6 k  j  V  _
在&lt;Font color = red&gt;&lt;%= path%&gt;&lt;/Font&gt;目录下的文件有(每个文件有其相应的功能)&lt;BR&gt;
3 f. ]" ~# y, s3 N: J&lt;Font color = blue&gt;
8 ]2 y  t! m. v' y" Q&lt;ul&gt;& B8 Z1 d3 ~3 R1 D  O' L8 I, p( C
&lt;%% ~) X1 h( O9 Y$ x
for(int i=0; i &lt; list.length; i++)
3 h! [7 B9 x! U{
" q7 c  S% ?% A$ {7 t. Q%&gt;' }+ b7 r+ L& Z
&lt;li&gt;&lt;%= list.getName() %&gt;&lt;BR&gt;
4 D' N; W, R# y' j&lt;%
0 L6 u$ r! o3 p& d# \4 _3 N}
- m& J# ?" Z3 _$ |%&gt;9 T2 {* f6 ]+ x$ j" Q1 z
&lt;/ul&gt;1 M8 v: W! k6 L7 T) I
&lt;/Font&gt;" I5 Y& Q1 v$ s
&lt;/BODY&gt;0 m  M! v+ K" ?9 S  H* a
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>读取文件中的字符 <BR><BR>直接调用FILEREADER对象的READ()方法读取所要显示的字符 <BR><BR>ReadAll.jsp <BR><BR>! o) t& @3 s5 Z# ?
<CENTER><CCID_NOBR>$ j1 e* B' x8 _; n% Y* _
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>5 D+ i1 a+ l; T- Y( `1 K. ?; s

5 L# v; i( x3 y) x<TR>4 |; e" ^1 S2 c  ]3 o5 C
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312" %&gt;
" w* v9 g% @2 M2 S&lt;%@ page language="java" %&gt;
' x. t/ X( F, L&lt;%@ page import="java.io.*" %&gt;* H: G5 o; B2 m1 |) \$ Z3 e8 N! f
&lt;HTML&gt;
- `0 _! w0 w8 {$ b1 c' k&lt;HEAD&gt;3 p: q; t& p& H- x
&lt;TITLE&gt;读取文件内容&lt;/TITLE&gt;
; h# a, O# J/ N. d$ ^&lt;/HEAD&gt;
* i$ H. N* c' l  F&lt;BODY&gt;  K! i  a) r' w0 d2 e4 l
&lt;CENTER&gt;
1 k3 x  n9 [, J&lt;FONT SIZE = 5 COLOR = blue&gt;读取文件内容&lt;/FONT&gt;
  t+ |5 ?7 }. _- C0 {8 L' S' ~, f&lt;/CENTER&gt;1 _8 L9 o# O+ m  L
&lt;BR&gt;5 {6 m, J  A( R( l$ ]2 q
&lt;HR&gt;. c- Q/ a* `& x* O. m% m5 n4 I
&lt;BR&gt;
1 Y* N9 [/ [+ ?* q$ e&lt;%
3 ?0 F* W1 p7 |+ r' s5 NString path = request.getRealPath("/jsphosting/wenjian"); 0 W; Q3 J0 y0 u( j
//取得目前目录在伺服端的实际位置
3 o, j6 F6 o8 E7 S* E% ^3 N. mFileReader fr = new FileReader(path + "\File.txt");% n: J* c2 O' g! m/ a6 f& P/ r
//建立FileReader变量,并设定由fr变量变数引用
2 C, P: \8 K% o: z, f) x; vint c = fr.read();! e" R+ P! K: C' l
//从文件中读取一个字节3 R# `: O# A$ D5 O& B! Q8 j
while(c != -1) : g9 ~; t# q4 g
//判断是否已读到文件的结尾" h* H8 S; n, ~/ X  ^1 g2 {
{2 X+ |3 J7 _- A. t
out.print((char)c); : E) R5 f5 i. n  @
//输出读取到的数据
5 C  c! M( j( t- R0 m3 rc = fr.read();
1 n0 }# Z# R0 x4 G4 w//从文件中读取数据2 z9 i* o) y; u  u
if(c == 13)
! b. T: p: \8 }) M2 z: v//判断是否为断行字节* }9 y* a- `3 r2 c, ]( P2 I# f
{+ L% B9 N& r1 x
out.print("&lt;BR&gt;");
- l6 B* x8 S% R1 ~/ i% m2 H% b, m //输出分行标签
, r8 v1 J6 ^/ k9 x; f, F- Ifr.skip(1); / @% ?( n" K* l- x$ S( u" j
//略过一个字节& R% K% b* q! u
c = fr.read(); , n& P- ^- ^5 q- O3 i& s" ^
//读取一个字节
( O* h3 Q+ @& J6 e}3 j6 k( B9 c5 n& N) l
}- D7 d8 x, B1 G+ Z; |
//关闭文件+ _: S, E% b9 J1 ~- j, u0 I' a' l
fr.close();
0 V& t/ R" P2 Y- q/ s6 H" C1 O+ p%&gt;
; }; }/ U6 p% z6 O& \&lt;/BODY&gt;
. m% H# F/ I5 q4 J# m, a  G&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>将数据写入文件 <BR><BR>通过调用FILEWRITER对象的WRITE()方法向文件中写入数据 <BR><BR>Write.jsp <BR><BR>+ @4 i6 Y0 d& @& ~  j6 E! v& S
<CENTER><CCID_NOBR># Q' H. M; g0 c  Y' A( X  {, i1 U
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>5 }1 g6 P: E7 _! }$ {+ ~
& ~1 C* q$ |7 m( ^$ H' W6 Q) F' q
<TR>
) [) `8 `' @* C0 |. A<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
3 W4 i/ i9 g$ r7 R& X&lt;%@ page language="java" %&gt;0 B7 V5 v- h# P  X# `
&lt;%@ page import="java.io.*" %&gt;5 ^; z( E/ ?2 M1 ]
&lt;HTML&gt;+ F( P# A9 ^+ ^/ ~3 z6 }
&lt;HEAD&gt;
6 i$ ]1 J7 w- ~! N$ z&lt;TITLE&gt;将数据写入文件&lt;/TITLE&gt;
3 [  d( W6 ~& J% d&lt;/HEAD&gt;
% i- o& f( h6 S; F" w; T&lt;BODY&gt;
# H* |: ~$ k1 @( @/ ^4 {&lt;CENTER&gt;
- }' M) L5 a& [8 S&lt;FONT SIZE = 5 COLOR = blue&gt;将数据写入文件&lt;/FONT&gt;
; W2 j: X5 ?5 |, p) c! H0 @&lt;/CENTER&gt;
. F7 \. Y1 U9 j. M* K2 G: r&lt;BR&gt;$ B) H' N; x: G
&lt;HR&gt;
8 G( u& c: r2 k&lt;BR&gt;5 B5 [) l* L6 ?$ J2 U  e
&lt;%
) B* F# v% Z* e( UString path = request.getRealPath("/jsphosting/wenjian"); 5 N" e6 t+ o. n
//取得目前目录在伺服端的实际位置: w5 n# V  K; f7 e( ?8 A
FileWriter fw = new FileWriter(path + "\File.txt"); ( I+ }0 V5 y6 G6 T
//建立FileWrite对象,并设定由fw对象变量引用
, m4 ]7 L9 A8 `# \: n5 a//将字串写入文件. J( d3 D4 M$ K! Y: ?" }
fw.write("大家好!");
  s- n) [3 d1 S- b% f( f4 m3 Wfw.write("祝大家学习jsp愉快!");
" H- S3 R) _$ |, vfw.write("希望大家能够深入了解jsp技术!");
/ a) [: E. c9 S# dfw.close();
2 v" E/ K( Z& [) O8 L! m//关闭文件
7 K6 O) {  g1 ?  u4 ~$ z%&gt;
/ l  t3 M9 h) t( n) W  b: j# m&lt&gt;写入文件内容为&lt;/P&gt;
5 y1 o8 Q' A! B. V9 Q( _&lt;FONT SIZE = 4 COLOR = red&gt;1 G9 \, O* [6 ~7 Q8 c' D4 {( i
&lt;%5 y) s" p* _9 Z! w
FileReader fr = new FileReader(path + "\File.txt"); 4 K/ n! B2 [  V; j
//建立FileReader对象,并设定由fr对象变量引用  F/ [5 |! O/ B" z! u
BufferedReader br = new BufferedReader(fr);
. ~* H$ A* P1 Y& m: \. s% r//建立BufferedReader对象,并设定由br对象变量引用
. I" n" |( g  nString Line = br.readLine();
' C7 ?) {: w6 _( @5 U& L$ x9 a//读取一行数据
+ y! c' H. B: vout.println(Line + "&lt;BR&gt;");
1 ]# e& e/ e) o7 X7 O+ N//输出读取得的数据7 H2 f# e' @8 l! _! r4 S
br.close();- G( z3 T  X  ]3 b/ v. Y  k+ C
//关闭BufferedReader对象% x4 I* z; j# @) {
fr.close();) L- j2 m% Y" U5 a+ Z) ^
//关闭文件
8 R* P6 T  J) d6 i: M. M9 B%&gt;2 x5 s( d+ f6 ?2 @$ z
&lt;/FONT&gt;
# F4 X- W6 z& K/ B5 \- I&lt;/BODY&gt;/ M' e2 A' J6 v. I
&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, 2026-4-21 05:50 , Processed in 0.449723 second(s), 52 queries .

回顶部