QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3960|回复: 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>
/ W6 x5 |( o; {1 N! x; _9 g: Q- d<CENTER><CCID_NOBR>
" Y* n' f8 R  q; B<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>8 i4 D* Y0 C: \1 S6 O; w7 {
" M8 l  a8 l; l0 v+ d2 f" D: u
<TR>
# G$ Q: M7 R  v# Y- M$ C7 c$ t<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
; @2 U6 ?% |$ `4 q4 C/ [&lt;%@ page import="java.io.*" %&gt;
, M* T8 P  O; i8 u& K  e&lt;%@ page language="java" %&gt;1 C% T, J2 S; G4 V; q
&lt;HTML&gt;
! t5 n* I! G8 l7 b6 Z4 b&lt;HEAD&gt;2 k9 _) e$ M9 j  _' {
&lt;TITLE&gt;文件的建立与删除&lt;/TITLE&gt;  [; Y( N7 c( z* f
&lt;/HEAD&gt;/ p. [' ~; }  g5 B3 r: z% ]: `
&lt;BODY&gt;
: h" l& A  ?  P/ C&lt;CENTER&gt;
. u7 y. d) Z0 [" J+ I5 ?) V&lt;FONT SIZE = 5 COLOR = blue&gt;文件的建立与删除&lt;/FONT&gt;, I$ x2 F. K+ L* T3 I% y' O+ Q
&lt;/CENTER&gt;
5 M9 L( S4 K/ M3 l9 l; d&lt;BR&gt;
7 d% L( @' K3 g& h! L; a&lt;HR&gt;% [' Q0 o1 `- E, J
&lt;BR&gt;
0 K; G7 K9 b! \: ^! q&lt;%
! v9 K; B- Q7 V9 h//建立代表目前目录位置中File.txt档的File变量, 并由fileName变量变数引用
* K+ w! T' Y9 a4 z/ d; Q0 qString path = request.getRealPath("/jsphosting/wenjian");
% B% B& ]3 N. G5 V1 d$ p) t- aFile fileName = new File(path, "File.txt");$ x7 i, w& u2 t+ t5 W
//检查File.txt是否存在1 r4 |0 Q' @0 t. Q
if(fileName.exists()), E8 v: K7 b, ?  g
{9 M1 `9 `" j3 A0 @8 ^
//删除File.txt档) c1 ], o; x; ?0 x) K' M! B
fileName.delete();
* E6 g+ L# B0 @6 e/ B; p//输出目前所在的目录路径2 S) Y! f) J8 V' p6 d
out.println(path + "\File.txt");2 @3 y' T/ x+ `" x
%&gt;
  o) C. ?& b# Q&lt;FONT SIZE = 4 COLOR = red&gt;存在&lt;/FONT&gt;, 已完成
5 I- I& |: @- L2 s3 F3 D0 o- y&lt;FONT SIZE = 4 COLOR = red&gt;删除&lt;/FONT&gt;( R( Y# B7 O; }! l$ a8 a" ^9 j
&lt;%
8 v9 x4 t, B. T) v; ]}
* n' A7 @- U  O2 I$ A5 oelse! E: E" u; O3 c. R( S
{5 h" r" j' N  y
//在目前的目录下建立一个名为File.txt的文字档 . X- y+ t, S, N8 C
fileName.createNewFile();
/ k" Z8 W  V# O  T6 u: j//输出目前所在的目录路径& i2 J: C! U# N* r# p6 ^
out.println(path + "\File.txt");
" U/ t( H" |  r* B( [+ ]+ P( ?: m  K%&gt;8 v  n( Y3 h0 ?& X. |, i# ~) ?
&lt;FONT SIZE = 4 COLOR = red&gt;不存在&lt;/FONT&gt;, 已完成
* e7 c1 c1 e" p&lt;FONT SIZE = 4 COLOR = red&gt;建立&lt;/FONT&gt;
  ?  N6 v7 e9 l: @( F&lt;%
! x2 u8 |6 {6 [# G) m}3 z0 m0 A" _/ u( z3 G1 {+ f
%&gt;
* u+ D0 V* e# ~" S/ A6 ]( j&lt;/BODY&gt;
* t/ q) t, f0 b- }&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>
/ @" b( W% e1 g<CENTER><CCID_NOBR>- m2 l3 R8 S9 d$ K
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>) ^$ K' j8 W$ b7 v. P
. i  `6 W9 a- z! s  k" Q
<TR>' r: E3 ^& X3 C. y% e
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
0 q5 d; T9 Z% w0 l" y&lt;%@ page language="java" %&gt;
6 q; n- B* E9 L& B" k; k: H' q&lt;%@ page import="java.io.*" %&gt;3 Y$ k, Q6 D0 Y0 c; E* _
&lt;HTML&gt;
  u) }& s1 p% G5 m$ \; j7 `, T  ~  |&lt;HEAD&gt;" }& V( S5 F5 I8 ~" D! R6 U
&lt;TITLE&gt;取得目录中的文件&lt;/TITLE&gt;
, t* l- S0 L2 s  Q&lt;/HEAD&gt;
0 p& Z' }1 h& x& M$ h$ Z&lt;BODY&gt;
2 N4 Z  O. ^$ B% n&lt;CENTER&gt;5 n( A' L" b: P* @: t% Q/ J
&lt;FONT SIZE = 5 COLOR = blue&gt;取得目录中的文件&lt;/FONT&gt;/ Y# G- b) F6 ?; l3 A
&lt;/CENTER&gt;- A6 S. {" w: r8 U1 u; E
&lt;BR&gt;
# X4 Q' a* c% e5 O8 F&lt;HR&gt;
. ~+ n' i" H. a, O3 O6 L&lt;BR&gt;
2 @$ x3 b1 V  _  T&lt;%
; Q! Y' ~9 d; s4 l( [2 |! r//取得目前目录的磁盘目录6 O" u0 Y3 n1 t% j  ~
String path = request.getRealPath("/jsphosting/wenjian");
4 }9 y8 z: ^7 L6 w; z8 p//建立代表目前目录位置的d变量: B. u$ d# V( ?" N! w
File d = new File(path);+ Q$ e+ `: `6 k. m7 a/ i) n2 c- M
//取得代表目录中所有文件5 w6 m  r* v6 F* R7 i0 q2 ~. b
File list[] = d.listFiles();
/ h% |4 z4 K( S* v+ b& x%&gt;! a2 U$ o+ z+ m& x+ ?) y. j: l$ J& \6 ]* `
在&lt;Font color = red&gt;&lt;%= path%&gt;&lt;/Font&gt;目录下的文件有(每个文件有其相应的功能)&lt;BR&gt;, C9 g" z1 ^, t8 I5 k
&lt;Font color = blue&gt;
5 f0 X  {) X, Y. i2 W&lt;ul&gt;4 d2 e- A: G# a2 p, h3 E
&lt;%" z( {" E+ D  C
for(int i=0; i &lt; list.length; i++)' K& |, L  z9 I* h$ b
{/ {4 N! A- O* [5 _, {& U# A/ o9 L
%&gt;. z. p1 l1 m$ a/ U6 M% B' P
&lt;li&gt;&lt;%= list.getName() %&gt;&lt;BR&gt;
% \" y: X. X; a) [  f&lt;%
1 A% x# ~. a4 K" o7 @2 b3 u) ]: i}+ I6 O/ q) K, k# X1 U/ J& j
%&gt;/ l* y- e* O2 f
&lt;/ul&gt;
+ q- |* R4 g5 H  k  V9 J&lt;/Font&gt;
: R4 n9 M  K4 O' W9 Z% O&lt;/BODY&gt;/ ]$ c8 U: c/ 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>
6 {# N) K( A" l5 `% q, I$ r1 `: s<CENTER><CCID_NOBR>
$ t. w8 V% Z0 i; ]+ k- y<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
# \  L# `6 x' v4 f0 v" u" s  k$ S0 @* V- l2 m, \, ?8 }5 h6 B
<TR>! q, f1 U8 J. V$ c( {# n. X
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312" %&gt;
4 v; k+ {4 \% C2 i9 D9 l' {&lt;%@ page language="java" %&gt;' x8 H; k) o8 h5 W$ v
&lt;%@ page import="java.io.*" %&gt;. V" M) S  d9 g! l* }
&lt;HTML&gt;+ A1 |0 h: ]3 _. S* D2 Z
&lt;HEAD&gt;
2 y0 I2 \0 b; ]$ l- `/ z, V&lt;TITLE&gt;读取文件内容&lt;/TITLE&gt;$ w5 J6 P: m1 L
&lt;/HEAD&gt;
  F5 ~# k5 ~4 y# I" y3 P&lt;BODY&gt;
  {/ I$ `/ r6 E& [+ v- g/ \&lt;CENTER&gt;; W, t- G3 l. j- Q9 K
&lt;FONT SIZE = 5 COLOR = blue&gt;读取文件内容&lt;/FONT&gt;5 N' ^: Z# A/ [2 L* T& O
&lt;/CENTER&gt;
6 J. F- |- u3 ^7 ^7 m&lt;BR&gt;8 ?5 A) G7 z# r! k' T0 R
&lt;HR&gt;
2 ~1 b7 r1 w* n: h&lt;BR&gt;
" W. m5 R- d% q6 u4 K&lt;%
- ?( `& n$ A, M6 f. P: pString path = request.getRealPath("/jsphosting/wenjian");
  Y) k: `/ h8 Z  e9 C//取得目前目录在伺服端的实际位置4 @* ?( x8 E& R# d# p0 T' E
FileReader fr = new FileReader(path + "\File.txt");
  l  u1 M; _+ L //建立FileReader变量,并设定由fr变量变数引用" O; k. Z8 b8 h' b* q- f
int c = fr.read();
+ y% Q/ N  T$ _+ g4 j; X, h$ Q //从文件中读取一个字节" l8 O$ `# W' A7 K
while(c != -1) ) X6 j* M3 D7 H( V$ U$ ]2 N- K+ n: t5 g
//判断是否已读到文件的结尾
0 _7 f# g- E) s' N' o{) l& P0 h! m- u0 L/ [
out.print((char)c); ' [% }  T8 }, A1 ~8 B% V* @
//输出读取到的数据
, ]7 t$ l8 Q5 x' e% ]. yc = fr.read(); 9 U" t7 _+ o# H1 b( r% e% w
//从文件中读取数据' U6 s, H( J; R% d
if(c == 13) 4 D2 T" _8 P% R2 [( R
//判断是否为断行字节
+ M' N* {! g  r. K$ X4 e; f% \{) Z( ?3 |' L( I2 ~5 i( N
out.print("&lt;BR&gt;");* s2 [! w+ v! V: X' }& Z1 P
//输出分行标签
' H- x  Y9 Y5 Wfr.skip(1);
' i1 g! I7 E1 O* w//略过一个字节
4 Y/ T2 e- p$ [* {5 R- O* ~c = fr.read();
- M$ P7 E6 q( X//读取一个字节
" h# V" N! d  z3 A0 F8 f}
2 x0 K0 s0 X3 H8 `* A" G% Z1 K}
4 e3 K% {9 Z4 T/ I/ D//关闭文件7 S7 S* ]% j/ g. f% i! Q+ g9 N, V8 S: w
fr.close();0 }1 c5 r6 k/ C" r# W/ F
%&gt;
3 ]. D- G$ G4 |5 E& k! ]3 T, g&lt;/BODY&gt;% ^9 S( C6 \1 B
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>将数据写入文件 <BR><BR>通过调用FILEWRITER对象的WRITE()方法向文件中写入数据 <BR><BR>Write.jsp <BR><BR>6 z* J& B) L" x% ?* Y
<CENTER><CCID_NOBR>
' \% V+ ^9 b9 }<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
1 K& `9 \, K( I$ Q1 `
: Y* J: q( h7 \( s& o+ J  T<TR>
( A, s8 V( ?4 ^& H$ J<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
3 B0 |; {. R3 Q* n&lt;%@ page language="java" %&gt;/ c* D' d7 X+ K9 M& C/ z8 p
&lt;%@ page import="java.io.*" %&gt;
! {: y" k$ j, q6 i" k- Q0 l) p&lt;HTML&gt;: m9 s$ a0 z- [0 q
&lt;HEAD&gt;
+ ]' W$ g" U! E& t! g/ m&lt;TITLE&gt;将数据写入文件&lt;/TITLE&gt;' y1 ?/ O+ |$ z  B. D  ?! r! k
&lt;/HEAD&gt;
( v& ?5 Z0 r3 t" T2 H1 D&lt;BODY&gt;8 W  u( c6 D, R1 G4 o+ [
&lt;CENTER&gt;' o2 l: N" @1 M
&lt;FONT SIZE = 5 COLOR = blue&gt;将数据写入文件&lt;/FONT&gt;
8 r2 e4 h! v6 C&lt;/CENTER&gt;$ V# [0 M+ Z3 A; r: \- K* X4 w
&lt;BR&gt;6 m+ Y+ y5 z  E) W; r/ S+ J
&lt;HR&gt;
8 a5 O) ?, z8 P' u/ g) Z1 v&lt;BR&gt;
: X, i' G9 n$ p' r$ m) I  ]4 `&lt;%
- Q; I+ [- Q, {String path = request.getRealPath("/jsphosting/wenjian");
6 H, S, b/ F. H" n2 j6 p% a//取得目前目录在伺服端的实际位置
' {. i/ R! T# l# Q$ HFileWriter fw = new FileWriter(path + "\File.txt");
7 {: Z: }% ^$ `& ?  G1 V, E//建立FileWrite对象,并设定由fw对象变量引用7 o5 S& w4 ~9 H+ _
//将字串写入文件4 e% ?% K4 f7 A0 [  l% c
fw.write("大家好!");7 c! T8 I& S& Z. e- }* D3 p
fw.write("祝大家学习jsp愉快!");3 b8 [; v: W( J: V" T" |
fw.write("希望大家能够深入了解jsp技术!");+ t  C( }: F) ]$ I  A, p, o
fw.close();
/ B" z; e; _) U) X* A3 h, a& V//关闭文件
7 m3 Q; O4 N) [$ {- v/ l" l%&gt;
; `' E9 o" H/ j2 D&lt&gt;写入文件内容为&lt;/P&gt;
* e6 W+ c# s3 w  F: T3 a&lt;FONT SIZE = 4 COLOR = red&gt;) K  A4 _8 Z% Y# D! P( G6 C% K$ r+ [
&lt;%7 m/ U1 \& R: S1 U% S
FileReader fr = new FileReader(path + "\File.txt"); 9 E/ `9 W% A% c: b- A  y$ ^5 }* D: e
//建立FileReader对象,并设定由fr对象变量引用
) {" f9 T" q6 mBufferedReader br = new BufferedReader(fr);
" i3 O1 X( [  ^, O! o" V: e4 G//建立BufferedReader对象,并设定由br对象变量引用6 Y8 w7 E) T3 Q1 M, F0 {
String Line = br.readLine(); 2 A2 \# x5 b  S8 C4 O
//读取一行数据
" I% `4 S4 t1 G" g; x! I1 pout.println(Line + "&lt;BR&gt;");
# u. P4 I! E8 u. {/ F//输出读取得的数据
( a# E4 b  k0 b; [- E) l$ Gbr.close();
8 d( x  C# _" z, E. U# H //关闭BufferedReader对象0 ?+ Y% m. A9 I+ }" k5 h" J
fr.close();. w7 }, k: _: m( b& w+ q
//关闭文件
" U% \0 H" q4 Z& z0 J$ K- I' m+ S%&gt;8 ]$ Z. Y% N" y  ^$ a
&lt;/FONT&gt;! M6 u& R& O5 X
&lt;/BODY&gt;0 v0 E- I' `' x- k$ o) E  }) l! Q# E% w
&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-22 10:21 , Processed in 2.100595 second(s), 51 queries .

回顶部