QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4144|回复: 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>- \; N# m' p& w3 e* t. J, N: N7 \7 f7 b
<CENTER><CCID_NOBR>7 l! J6 ~* v+ E. C; [9 u' d6 z
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>3 H( W( a7 ?* [- Y: m0 ~
; f4 Z0 }3 T  S; M" V
<TR>
9 D' J, x( X' i' U7 |<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;
& k& h! u+ P% t, W8 p0 ]* d7 Q* e&lt;%@ page import="java.io.*" %&gt;0 T9 Y9 r( I+ Z8 S6 {7 I% R& ?
&lt;%@ page language="java" %&gt;
! T9 z/ f7 \3 @# h( z- x4 y. d$ J&lt;HTML&gt;8 @# D, S3 {" M( f7 f
&lt;HEAD&gt;
4 D) S% v& L" i/ a3 A) r3 w$ R&lt;TITLE&gt;文件的建立与删除&lt;/TITLE&gt;9 a1 M- C0 s' z3 R8 X* y. o, H; T
&lt;/HEAD&gt;. p1 M7 g* z" j2 Q  T# N% a& L
&lt;BODY&gt;
: @' Q0 [* Y( `* }; j&lt;CENTER&gt;
6 F1 ]! W2 a+ r% y1 G$ q&lt;FONT SIZE = 5 COLOR = blue&gt;文件的建立与删除&lt;/FONT&gt;9 X$ {' _% k+ g0 E9 P8 P" ~0 a. z
&lt;/CENTER&gt;: B6 ^6 o, c5 }" R
&lt;BR&gt;
6 H* Y& k4 U2 u8 s9 B$ u& g9 I&lt;HR&gt;
& d0 w' B+ f; G* Q3 t; X. M&lt;BR&gt;8 v0 |! r# I9 ?; h
&lt;%
5 V$ }4 a: F8 v* |+ ~0 h5 K//建立代表目前目录位置中File.txt档的File变量, 并由fileName变量变数引用( D5 `; a9 F& E3 h" [. c% X+ o
String path = request.getRealPath("/jsphosting/wenjian");
) ~" [0 P2 k, Y0 S- @File fileName = new File(path, "File.txt");
$ M  v/ {/ L& b$ O0 a& l$ z//检查File.txt是否存在, W- L6 A9 f; J0 h( F+ z2 w3 r
if(fileName.exists())
; T$ o" o4 U; ~9 l* @{, ~0 `" l3 e+ `8 N( F8 g& W6 {
//删除File.txt档0 I$ I" a2 U: v
fileName.delete();4 ^5 o$ Q/ W" ?! A/ M
//输出目前所在的目录路径
1 b$ x$ Y! z- w' V% o% gout.println(path + "\File.txt");" F- |3 D! @( W+ D
%&gt;/ c! e4 j7 [. Z' f0 \
&lt;FONT SIZE = 4 COLOR = red&gt;存在&lt;/FONT&gt;, 已完成
) h8 Q" F! ^* X: m' u. \+ g&lt;FONT SIZE = 4 COLOR = red&gt;删除&lt;/FONT&gt;; q( ]+ p/ H5 S( J/ {1 Q
&lt;%/ ~7 k- n! j6 n  g. Q# S
}
! j/ R+ e: @0 e" Gelse
: J% W$ _9 E. `{9 y1 q3 Z6 [" t& {) c2 w
//在目前的目录下建立一个名为File.txt的文字档   j$ |3 J2 ]  Y5 _/ Y9 t4 n, {
fileName.createNewFile();6 _* s* J) `2 R) |9 T' o
//输出目前所在的目录路径
6 O  A& [  ]# K/ ?" c5 @4 Bout.println(path + "\File.txt");4 r( ^* h' @, G" _; Y) F( j9 R3 S
%&gt;$ ~" q& }: Y2 S: ^0 P4 k
&lt;FONT SIZE = 4 COLOR = red&gt;不存在&lt;/FONT&gt;, 已完成
( G  [: p9 {3 W* W( s&lt;FONT SIZE = 4 COLOR = red&gt;建立&lt;/FONT&gt;4 A* H7 X# q8 W& U1 |' Z6 y  R
&lt;%
  b/ z5 f: o. X! O9 \% @/ _}/ ?1 i# [8 Z# j8 ^
%&gt;
8 g; o+ R! l7 d. Y&lt;/BODY&gt;
0 g# |5 d+ z; C  K&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>
2 |5 i# S% z7 S+ r+ G<CENTER><CCID_NOBR>
3 d. ]8 m" T9 I. q3 @<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
9 L; Y8 t  k* x+ B* N0 p3 h
4 P- n% `9 I) R9 C<TR>) W9 ^; e& Z) V& u, w' C; B
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;3 {3 u2 G) u7 C5 R8 P$ u
&lt;%@ page language="java" %&gt;9 `0 L4 s# U  B
&lt;%@ page import="java.io.*" %&gt;1 u/ n# W+ s: b' l! f2 D* Z
&lt;HTML&gt;9 f3 @5 e& O9 {9 H/ t
&lt;HEAD&gt;' ^" s  T4 q6 H7 \3 D+ S2 U+ Q
&lt;TITLE&gt;取得目录中的文件&lt;/TITLE&gt;1 F. y3 l7 l5 }3 i  A3 Y
&lt;/HEAD&gt;1 c, O* H! N: p8 H6 v& w1 y  S
&lt;BODY&gt;' Y, b1 K$ p$ _- f7 v
&lt;CENTER&gt;$ |; N: a$ g) k$ c, a
&lt;FONT SIZE = 5 COLOR = blue&gt;取得目录中的文件&lt;/FONT&gt;" c# s' b) m0 N% a4 Q" q0 A
&lt;/CENTER&gt;" ?1 r8 [8 M/ J! u
&lt;BR&gt;
) f* C6 A# Z, q, [6 b$ {9 A&lt;HR&gt;3 T; X, E! r! F% T: R+ G4 b  E6 p) w4 ^
&lt;BR&gt;6 _4 u3 M% o3 G1 b
&lt;%
* C; p# \. Y, D& O% V' @//取得目前目录的磁盘目录9 o3 J7 G2 O5 `% L) Y, }. y
String path = request.getRealPath("/jsphosting/wenjian");
4 ^$ g+ f5 E8 J- w/ K' h8 x//建立代表目前目录位置的d变量3 R; y$ q3 v  Z/ @( X5 t; Q$ R) |
File d = new File(path);: Q! X- J4 u3 I) W4 s
//取得代表目录中所有文件
$ c1 P  `5 m4 t) `3 TFile list[] = d.listFiles();
' C/ L- Q5 g  A4 b%&gt;$ F9 s2 B+ S) {/ S' n7 `
在&lt;Font color = red&gt;&lt;%= path%&gt;&lt;/Font&gt;目录下的文件有(每个文件有其相应的功能)&lt;BR&gt;  b' o* s6 D, {1 J# `: e' o
&lt;Font color = blue&gt;0 k/ i) }- }+ ~+ t9 A/ `: Q
&lt;ul&gt;6 }( z6 l: w( w3 }# d3 b0 Y
&lt;%
' d$ O* R! F+ f1 N- u2 Kfor(int i=0; i &lt; list.length; i++)
8 N% l& M0 ^6 U" f0 Q1 B* T{
& x2 b+ Y, k& F1 `( i8 @+ B%&gt;
& ~/ V4 `9 f; K" }0 `  ?&lt;li&gt;&lt;%= list.getName() %&gt;&lt;BR&gt;
/ U' H8 i' i1 O&lt;%
  i) Z# P0 b- l+ S}
9 U( z% Q/ g5 G" z9 {; I! [: F4 Z%&gt;2 Y6 ^. o, E6 r: m5 @* l8 G
&lt;/ul&gt;2 D, n# G( J/ @, K
&lt;/Font&gt;/ y) F  X  j# s+ r+ e% k2 t
&lt;/BODY&gt;0 S1 R* g; q9 P
&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>读取文件中的字符 <BR><BR>直接调用FILEREADER对象的READ()方法读取所要显示的字符 <BR><BR>ReadAll.jsp <BR><BR>: p/ f7 ^! ?# Y% x$ L  K
<CENTER><CCID_NOBR>
1 l% N4 X4 U4 Q& F- O<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>) X" p, k2 F! p- H

- j: t: M) R8 w<TR>4 q; _. i& ?. p* g
<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312" %&gt;! \% ^3 c/ p- u& ?
&lt;%@ page language="java" %&gt;
, k) t: M/ r7 C- h&lt;%@ page import="java.io.*" %&gt;3 @3 r( a3 k  v0 G. S& \
&lt;HTML&gt;7 [' }/ Y- P3 F, Y+ Q0 Z
&lt;HEAD&gt;) Z- t# l0 d/ ]7 ]) q
&lt;TITLE&gt;读取文件内容&lt;/TITLE&gt;) {. C* Z' v$ K! J0 S+ M
&lt;/HEAD&gt;- Z8 }( x$ y  y& @
&lt;BODY&gt;
$ n' d+ {5 ?, l- s# u2 |' N&lt;CENTER&gt;
  s- |7 C4 }! S) G7 N9 `( R6 L( Y" ^&lt;FONT SIZE = 5 COLOR = blue&gt;读取文件内容&lt;/FONT&gt;& L+ Q4 b3 a. K7 Z/ e0 x
&lt;/CENTER&gt;
, {: {2 O' L7 }+ B; Q* O2 ?&lt;BR&gt;
" t2 _, W3 @! j  n&lt;HR&gt;
8 \; I0 P! M' ]0 j- j, `( y( @: D&lt;BR&gt;7 }( R. F- D. x3 P6 k/ s
&lt;%
, u7 R7 u6 T- u7 E* CString path = request.getRealPath("/jsphosting/wenjian"); $ h9 o9 S/ z* [# I7 d4 b% {6 @
//取得目前目录在伺服端的实际位置
2 @7 \4 M5 o5 {% p) e! }! Z( g  @2 y( M3 B9 ZFileReader fr = new FileReader(path + "\File.txt");
! q1 R- I- |4 g% A" p //建立FileReader变量,并设定由fr变量变数引用
# n( s+ t. T$ I# q' Q" s! c8 B  eint c = fr.read();4 w# R/ d  [% {. ~( ^' U5 q$ U: T
//从文件中读取一个字节4 ?+ F4 p; S( y  l
while(c != -1)
) h& m* Q! q7 A5 F//判断是否已读到文件的结尾% ?8 ^1 o- t. P: e1 a
{1 z" k" B0 J( ~3 U) A- W! ?1 ]2 o9 Q
out.print((char)c); ' I) x9 i& |9 @6 Q9 q. M  A
//输出读取到的数据
0 @& _' O5 |9 u3 D  Fc = fr.read();
- }; w1 b6 T# F! z- `//从文件中读取数据
$ Q5 z9 n; p* G" Bif(c == 13) - O2 k, N0 }9 `. k6 h! O
//判断是否为断行字节
. f6 v" ^4 J- L9 s  s/ x+ M) _% l0 K{
; |0 ~/ t" c* j5 U0 o# O0 m7 M) l* ?out.print("&lt;BR&gt;");
/ j6 D0 C; v: T0 o$ G7 M8 }/ k/ a //输出分行标签% d8 q+ g) Q) O" k& ~9 l% q
fr.skip(1);
/ J1 l) C/ ?+ `( v* J# U//略过一个字节
% H3 p% _8 M* _3 d* ~. n, q: ~c = fr.read(); ( O3 m7 d  P9 O; D. w
//读取一个字节$ {- ^5 O4 _+ r- `0 A+ X  [' C
}  D+ x9 u2 M/ ~" `" Y2 s/ m% J' G
}
& k- j9 Z- C& ~7 ]  s( v//关闭文件1 ]/ M, N" u; y! U
fr.close();
5 ^/ {1 f+ {0 g9 N/ k3 P%&gt;
% a+ p- Z- r1 B$ w6 r&lt;/BODY&gt;
9 G, H+ r0 u- ?4 f; f&lt;/HTML&gt; </CCID_CODE></PRE></TD></TR></TABLE></CCID_NOBR></CENTER><BR><BR>将数据写入文件 <BR><BR>通过调用FILEWRITER对象的WRITE()方法向文件中写入数据 <BR><BR>Write.jsp <BR><BR>
: o- V! F% ~' d" f<CENTER><CCID_NOBR>6 y8 G9 j0 s" z" w
<TABLE cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
7 K0 @' ]- e  E
6 w- }+ h! j9 \! w<TR>
! {8 g4 V0 Y8 [/ M' J" N<TD class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6><RE><CCID_CODE>&lt;%@ page contentType="text/html; charset=GB2312"%&gt;8 Z- a( t8 \# g4 x
&lt;%@ page language="java" %&gt;( D* H2 V8 A+ j# ]- T1 Y* ?
&lt;%@ page import="java.io.*" %&gt;. p7 L0 \* u9 S8 L4 j+ \; J4 [# t; z
&lt;HTML&gt;
. @& |. }7 j3 j  K! y9 G  y) ^8 w&lt;HEAD&gt;
8 ?: x2 N( t- T& f&lt;TITLE&gt;将数据写入文件&lt;/TITLE&gt;
# m- u! H& K3 |) T&lt;/HEAD&gt;9 @, T! A6 ]& K% x8 ^
&lt;BODY&gt;0 X; D  |5 T( H( j% x
&lt;CENTER&gt;  w; F8 j' b  V/ z; e/ d' E' x
&lt;FONT SIZE = 5 COLOR = blue&gt;将数据写入文件&lt;/FONT&gt;
+ X6 L& S# E9 a" @2 n) d# u2 }4 J0 V&lt;/CENTER&gt;( |" F8 l% g4 f0 p" `1 ?
&lt;BR&gt;
+ U5 S  w& I0 I, B) I9 t&lt;HR&gt;
: `+ Z3 z8 }4 \& O5 |&lt;BR&gt;
) G) w2 ?! S  q' p&lt;%$ W1 z1 r; F3 w8 U. R" k2 @# \
String path = request.getRealPath("/jsphosting/wenjian"); # E- X% S: H5 u/ i+ r5 h) y
//取得目前目录在伺服端的实际位置
- l# F$ M, |7 K6 |- u3 ]FileWriter fw = new FileWriter(path + "\File.txt");
9 O, @, Y( E1 `' `//建立FileWrite对象,并设定由fw对象变量引用
' w8 r; C+ D1 o5 ]) f//将字串写入文件
3 U+ N3 k0 K( Y. m/ Tfw.write("大家好!");0 N, ?- |* r( w- v7 B) F
fw.write("祝大家学习jsp愉快!");
6 w) q; B- a/ k. ]* H! l& ufw.write("希望大家能够深入了解jsp技术!");
2 j# I+ }0 M( ]& w  k4 X6 k/ wfw.close(); + n* y% o4 P4 `! |. c0 H: p
//关闭文件
& Y: P( P9 ^7 Y0 @%&gt;+ g7 S3 A" i0 p# {8 \/ f$ W
&lt&gt;写入文件内容为&lt;/P&gt;7 M+ A% U: @* o0 f) L
&lt;FONT SIZE = 4 COLOR = red&gt;
4 @0 N& w! S8 R+ O1 f6 g&lt;%
) }$ ~, n, P9 ?& u/ ~: h( OFileReader fr = new FileReader(path + "\File.txt"); 7 @- k7 O: q% N( r7 l$ Y7 \
//建立FileReader对象,并设定由fr对象变量引用; x9 l! D( V/ ^1 k; `
BufferedReader br = new BufferedReader(fr);   h6 C% z) M! D: j/ f, t( G
//建立BufferedReader对象,并设定由br对象变量引用; c' Q6 X, ^1 z+ k% z/ z' |; U2 V! l
String Line = br.readLine();
/ U3 _( h, T3 Y9 n//读取一行数据* h- i7 b3 m+ ^5 L: m9 [- ]
out.println(Line + "&lt;BR&gt;"); " V9 ]( u6 [) _
//输出读取得的数据, D, u( ~) g* O  P! j
br.close();1 h6 _( B! M7 l# x* `( y# N
//关闭BufferedReader对象/ f3 s  [, f  ^
fr.close();. s2 Q1 g) f' X, I, n- L" j
//关闭文件
5 [# ~3 M& X. {1 o9 S2 C# B%&gt;/ w( [; k4 s. Z5 {5 n* Y9 r
&lt;/FONT&gt;
  Z( p8 v$ [/ |. W5 `3 \&lt;/BODY&gt;
. m# S5 T3 d' o+ P8 N6 r&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 微信微信
您需要登录后才可以回帖 登录 | 注册地址

fastpost qq
收缩
  • 电话咨询

  • 04714969085

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

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

蒙公网安备 15010502000194号

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

GMT+8, 2026-11-1 05:19 , Processed in 0.250399 second(s), 52 queries .

回顶部