Servlet对文件的读写操作

(1)如何在serlvet中读取文件的内容

[java]  view plain  copy
  1. package com.tsinghua;  
  2.   
  3. import java.io.*;  
  4.   
  5. import javax.servlet.http.*;  
  6.   
  7. public class ServletFileTest1 extends HttpServlet {  
  8.   
  9.    
  10.     public void doGet(HttpServletRequest req,HttpServletResponse res){  
  11.                   
  12.         try {  
  13.                   
  14.             //中文乱码  
  15.             res.setContentType("text/html;charset=gbk");  
  16.               
  17.             PrintWriter pw=res.getWriter();  
  18.            
  19.             //创建一个FileReader  
  20.             FileReader  f=new FileReader("f:\\myCounter.txt");  
  21.                       
  22.             BufferedReader bw=new BufferedReader(f);  
  23.                       
  24.                
  25.              //读出一行数据 或者使用for循环都区全部内容     
  26.             String numVal=bw.readLine();  
  27.                
  28.              //一定要关闭文件流       
  29.             bw.close();  
  30.               
  31.             pw.println("从文件中读取的数据是:"+numVal);  
  32.               
  33.            
  34.          }  
  35.          catch (Exception ex) {  
  36.               
  37.             ex.printStackTrace();  
  38.            
  39.          }  
  40.               
  41.     }  
  42.       
  43.     public void doPost(HttpServletRequest req,HttpServletResponse res){  
  44.           
  45.         this.doGet(req,res);  
  46.     }  
  47.       
  48. }  

(2)如何在serlvet中操作文件写入数据

[java]  view plain  copy
  1. package com.tsinghua;  
  2.   
  3. import java.io.*;  
  4.   
  5. import javax.servlet.http.*;  
  6.   
  7. public class ServletFileTest2 extends HttpServlet {  
  8.   
  9.    
  10.     public void doGet(HttpServletRequest req,HttpServletResponse res){  
  11.           
  12.         try {  
  13.            
  14.             //中文乱码  
  15.             res.setContentType("text/html;charset=gbk");  
  16.               
  17.             PrintWriter pw=res.getWriter();  
  18.            
  19.             //创建一个FileWriter  看内存数据 ->  磁盘文件(写入,输出)  
  20.             //看内存数据 <-  磁盘文件(读入,输入)  
  21.             FileWriter  f=new FileWriter("f:\\myCounter.txt");  
  22.               
  23.             BufferedWriter bw=new BufferedWriter(f);  
  24.               
  25.             //在文件中写入数据    
  26.             bw.write("1");  
  27.               
  28.             //关闭文件流  
  29.             bw.close();  
  30.               
  31.             pw.println("在文件中写入了数据");  
  32.               
  33.            
  34.          }  
  35.          catch (Exception ex) {  
  36.               
  37.             ex.printStackTrace();  
  38.            
  39.          }  
  40.               
  41.     }  
  42.       
  43.     public void doPost(HttpServletRequest req,HttpServletResponse res){  
  44.           
  45.         this.doGet(req,res);  
  46.     }  
  47.       
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Servlet,可以通过使用Java的文件操作API读写文件。 首先,要读取文件内容,可以使用FileInputStream或BufferedReader类。FileInputStream类用于从文件读取字节,而BufferedReader类可用于按行读取文件。 例如,要读取文本文件的内容,可以使用如下代码片段: ``` try { String filePath = "/path/to/file.txt"; // 文件路径 File file = new File(filePath); BufferedReader reader = new BufferedReader(new FileReader(file)); String line; StringBuilder fileContent = new StringBuilder(); while ((line = reader.readLine()) != null) { fileContent.append(line); } reader.close(); // 对读取到的文件内容进行处理 String content = fileContent.toString(); // ... } catch (IOException ex) { ex.printStackTrace(); } ``` 接下来,如果需要在Servlet写入文件,可以使用FileOutputStream或PrintWriter类。FileOutputStream类用于将字节写入文件,而PrintWriter类可用于写入文本文件。 例如,要写入文本文件,可以使用如下代码片段: ``` try { String filePath = "/path/to/file.txt"; // 文件路径 File file = new File(filePath); PrintWriter writer = new PrintWriter(new FileWriter(file)); writer.println("Hello, World!"); writer.println("This is a sample text."); writer.close(); // 文件写入成功 } catch (IOException ex) { ex.printStackTrace(); } ``` 需要注意的是,在使用这些类进行文件读写操作时,应该捕获和处理可能产生的IOException异常,以便在发生错误时能够进行适当的处理和报告。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值