我的日常

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 盖世程序员 > Java操作读取写入文本TXT及XML文件内容
总共48087条微博

动态微博

查看: 1709|回复: 1

Java操作读取写入文本TXT及XML文件内容

[复制链接]

29

主题

5

听众

183

金钱

三袋弟子

该用户从未签到

跳转到指定楼层
楼主
发表于 2014-07-28 19:39:50 |只看该作者 |倒序浏览
  1. package fileIo;   
    # e; S7 _- K/ ~& Z; I( A
  2. & F% o: p; s. B) d6 ?8 d
  3. import  java.io.BufferedReader;   * D$ [; q! B0 ~0 i, Q6 P7 W
  4. import  java.io.BufferedWriter;   # i3 P; k) q4 ~& H* I  }
  5. import  java.io.File;   . i1 ~+ W$ j5 C  V- P' A9 k  A
  6. import  java.io.FileReader;   ' U5 t2 ], v1 D; B
  7. import  java.io.FileWriter;   ' V9 n" t  t! |0 |4 e0 Q  u7 C

  8. + I1 P6 J, D# H8 A5 u( Q
  9. public  class  ReadTextFile {   
    7 F% s+ _  |0 G; A6 W
  10.     public  BufferedReader bufread;   ! c+ X# O' @" @( f& ]3 d& \& x
  11.     public  BufferedWriter bufwriter;   ( k% F; k* b$ T8 Q4 E* j: E  j
  12.     File writefile;   # R* {  V2 N: w4 w3 C
  13.     String filepath, filecontent, read;   1 ^0 ]' ]0 d# Q: }! t& i; i& w
  14.     String readStr  =   "" ;   7 ]8 R7 D9 R* ~( Y6 o
  15.     // 从文本文件中读取内容      Z0 P! D' ]1 v0 q4 |# K
  16.      public  String readfile(String path)      5 _' b! q! M3 j8 n! j( K
  17.       {   
    + r# r9 w" Y1 K. p7 B$ e
  18.          try    {   3 u1 F0 w! c& Z+ R6 m
  19.            filepath  =  path;  // 得到文本文件的路径    / A0 M8 [! k7 j% F& {
  20.             File file  =   new  File(filepath);   
    & O+ Z4 q# g* \2 v. K
  21.            FileReader fileread  =   new  FileReader(file);   
    & Q3 q# n  l% z2 e/ e) v7 |. L
  22.            bufread  =   new  BufferedReader(fileread);   * G( f/ z, u& \$ @
  23.              while  ((read  =  bufread.readLine())  !=   null )   {   ; F6 h4 o: T2 @$ V3 [
  24.                read  =  read + " /r/n " ;               ) P  V1 p% y7 q/ N- l- ]: I' U' n. E
  25.                readStr  =  readStr  +  read;   
    8 ]3 X9 q3 E5 p1 ?/ @
  26.            }   
    ( k' S0 S/ F; ~% W
  27.         }   catch  (Exception d)   {   $ ^: G5 y6 h. d9 v! Q4 R
  28.            System.out.println(d.getMessage());   # Z3 h: o6 g/ j, Z& u7 D
  29.        }   
    $ w# B8 \" E& u$ Q
  30.         return  readStr;  // 返回从文本文件中读取内容   
    " `4 r9 f- m7 r  H2 Y8 a
  31.     }   
    3 O, t+ {2 e5 I5 J2 D- l  ]
  32.     * z7 t6 ~7 _, ~) z4 f- [3 q
  33.     // 向文本文件中写入内容   
    ) E5 }9 h% _/ z- b* r
  34.       public   void  writefile(String path, String content,  boolean  append)   {   
    ! J" o( J  J! u3 s* E! R* j9 r# Y
  35.          try    {   - ?5 D$ k  y6 H; H" H' }4 L1 f& e
  36.             boolean  addStr  =  append;  // 通过这个对象来判断是否向文本文件中追加内容    5 j2 S; d) u8 w6 m9 Q0 A
  37.             filepath  =  path;  // 得到文本文件的路径    6 O6 M% C" _, `" m$ T' Y
  38.             filecontent  =  content;  // 需要写入的内容   
    8 A0 ]6 D0 }2 B1 G" n3 r$ y1 r. _/ N
  39.             writefile  =   new  File(filepath);   ! a% k( e( V# `+ L/ {: }
  40.             if  (writefile.exists()  ==   false )  // 如果文本文件不存在则创建它     
    - i/ _3 Y9 l2 v" g3 g/ _# Y# T
  41.                {   
    / x+ }, U: X# M
  42.                writefile.createNewFile();   % y3 I0 r3 h& a3 _+ O! o
  43.                writefile  =   new  File(filepath);  // 重新实例化   
    + ]9 K4 ?# I# D. W# A/ H
  44.             }   
    & L  M  ~; t! H4 L+ }! l: F
  45.            FileWriter filewriter  =   new  FileWriter(writefile, addStr);   
    . i: q) V; Z4 G# Z
  46.             // 删除原有文件的内容    * [' \+ g) a( h
  47.             java.io.RandomAccessFile file =   new  java.io.RandomAccessFile(path, " rw " );   ( u7 i0 R) \- b# F/ ?3 I
  48.            file.setLength( 0 );   
    , L! K3 u7 w9 g# ~
  49.             // 写入新的文件内容    7 c0 q# {+ e1 \7 [2 J% ?/ R
  50.             filewriter.write(filecontent);   1 ]7 s% v  m& h" e! l& u. d
  51.            filewriter.close();   ) a9 E7 h+ D+ m/ g# m6 g
  52.            filewriter.flush();   
    & f. K8 a3 |% R& ^5 ?
  53.         }   catch  (Exception d)   {   : W# {0 c1 x$ U& ]+ u# `% o$ C
  54.            System.out.println(d.getMessage());   
    ! }" E% v' Z: h
  55.        }    0 Y# E+ k+ I' {
  56.     }   
    0 K! q0 {0 L! F& B/ x
  57.    
    0 F, V' m, f8 Q' Y* Z: P
  58.      public   static   void  main(String[] args)  throws  Exception   {   
    $ _' E7 ^5 e0 u: e8 x5 S$ |
  59.        ReadTextFile parse  =   new  ReadTextFile();   ( H0 u. i. V! c
  60.        String filecontent  =  parse.readfile( " c:/applicationContext.xml " );           
    - F( @- S9 Z% Y+ c
  61.        parse.writefile( " c:/applicationContext.xml " ,filecontent, true );   ! u! G. Z3 S4 t# \4 U; m- X' h6 W
  62.           . ^2 n3 ^- o' E" s
  63.     }   
    6 g) S; U, O3 U8 p3 @
  64. }
复制代码
8 k9 t* D3 [4 H1 X
6 U" X7 L6 W- i; ~5 i; {2 E

科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、科帮网管理员和版主有权不事先通知发贴者而删除本文


JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

96

主题

7

听众

406

金钱

四袋长老

该用户从未签到

沙发
发表于 2014-08-02 22:00:34 |只看该作者
流没有关闭:-(
回复

使用道具 举报

快速回复
您需要登录后才可以回帖 登录 | 立即注册

   

关闭

站长推荐上一条 /1 下一条

发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
快速回复 返回顶部 返回列表