首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

字节流跟字符流读取文件

2012-12-22 
字节流和字符流读取文件package ioimport java.io.BufferedReaderimport java.io.BufferedWriterimport

字节流和字符流读取文件

package io;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import javax.servlet.http.HttpServletRequest;public class ReadFile {public static void main(String[] args) {/** 读取字符流文件,并且把此文件复制到本地磁盘 */String fromPath = "f://每日任务.txt";String toPath = "f://1.txt";ReadFile.readAndWriteTxt(fromPath, toPath);/** 读取字节流文件,并且把此文件复制到本地磁盘 */// String fromPath = "f://3.gif";// String toPath = "f://1.gif";// ReadFile.readAndWriteImg(fromPath, toPath);}/** * FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用 FileReader。 *  * @param fromPath * @param toPath */public static void readAndWriteImg(String fromPath, String toPath) {File file = new File(fromPath);try {FileInputStream is = new FileInputStream(file);FileOutputStream os = new FileOutputStream(toPath);byte[] b = new byte[1024];while (is.read(b) != -1) {os.write(b);}os.close();is.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}/** * FileReader 用于读取字符流。要读取原始字节流,请考虑使用 FileInputStream。 *  * @param fromPath * @param toPath */public static void readAndWriteTxt(String fromPath, String toPath) {File file = new File(fromPath);try {FileReader ir = new FileReader(file);        BufferedReader br = new BufferedReader(ir);  FileWriter ow = new FileWriter(toPath);BufferedWriter bw=new BufferedWriter(ow);char[] b = new char[1024];while (ir.read(b) != -1) {ow.write(b);} ow.close();ir.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}/** * 把文本内容输出到控制台和页面,这个是在jsp页面上调用的方法  */public static String getTxt(HttpServletRequest request) {String fromPath = "f://每日任务.txt";StringBuffer sb=new StringBuffer();File file = new File(fromPath);try {FileReader ir = new FileReader(file);        BufferedReader br = new BufferedReader(ir);  String output;while((output=br.readLine())!=null){ sb.append(output+"\n");System.out.println(output); } ir.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return sb.toString();}}

jsp页面调用getTxt()
<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@page import="io.ReadFile"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Insert title here</title><%  String content = ReadFile.getTxt(request); %></head><body><%=content %></body></html>















热点排行