JAVA IO

package com.zhp.method.io;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;

public class _BufferedStream {

	public static void main(String[] args) {
		File file = new File("F:\\eclipse[重要]\\缓冲流的测试.txt");
		String contain = "姑苏城外寒山寺,夜半钟声到客船。";
		_Writer(file, contain);
		System.out.println(_Read(file));
		_File.delete(file.getAbsolutePath());
	}

	/** BufferedReader 缓冲读取流 */
	public static String _Read(File file) {
		String s = "";
		try {
			/* BufferedReader不仅可以套在FileReader外面,还可以套在InputStreamReader等Reader类外面 */
			FileReader fr = new FileReader(file);
			BufferedReader br = new BufferedReader(fr);
			String tem = null;
			while ((tem = br.readLine()) != null) {
				s += tem;
			}
			fr.close();
			br.close();
		} catch (Exception e) {
		}
		return s;
	}

	/** BufferedWriter 缓冲写入流 */
	public static void _Writer(File file, String contain) {
		// 如果文件不存在,创建文件。
		if (!file.exists()) {
			System.out.println("要写入的文件不存在,即将创建...");
			try {
				_File.creatFolder(file.getParent());
				_File.creatFile(file.getAbsolutePath());
			} catch (Exception e) {
				System.out.println(" 创建文件失败!");
			}
		}
		// 开始写入到文件
		try {
			FileWriter fw = new FileWriter(file, true);
			BufferedWriter bw = new BufferedWriter(fw);
			bw.write(contain);
			bw.newLine();
			bw.flush();
			bw.close();
			fw.close();
		} catch (Exception e) {
			System.out.println("写入到文件失败!");
		}

	}

}


package com.zhp.method.io;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

/** 文件字节流 */
public class _ByteStream {

	public static void main(String[] args) {
		String contain = "This is a test sentence!\n";
		String fileName = "F:\\eclipse[重要]\\20140310_FileputStreamTest.txt";
		_File.creatFile(fileName);// 创建文件
		_FileOutputStream(fileName, contain);// 输出语句到文件
		byte[] get = _FileInputStream(fileName);// 获得文件内容
		showByte(get);// 输出获得的内容
		_File.delete(fileName);// 删除文件
	}

	/** FileInputStream 文件字节流获得文件内容 */
	public static byte[] _FileInputStream(String fileName) {
		File file = new File(fileName);
		byte[] tem = new byte[(int) file.length()];
		try {
			FileInputStream fis = new FileInputStream(file);
			fis.read(tem);
			fis.close();
			System.out.println("读取文件 " + file.getName() + " 成功!");
		} catch (Exception e) {
		}
		return tem;
	}

	/** FileOutputStream 文件字节流添加到开始。 */
	public static void _FileOutputStream(String fileName, String contain) {
		byte[] b = contain.getBytes();
		try {
			File file = new File(fileName);
			FileOutputStream fos = new FileOutputStream(file, true);
			fos.write(b);
			fos.close();
			System.out.println("输出到文件 " + file.getName() + " 成功!");
		} catch (Exception e) {
		}
	}

	/** 输出一个byte[] 的内容 */
	private static void showByte(byte[] b) {
		for (byte tem : b) {
			System.out.print((char) tem);
		}
	}

}


package com.zhp.method.io;

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;

public class _CharacterStream {

	public static void main(String[] args) {
		File file = new File("F:\\eclipse[重要]\\FileReader和FileWriter的测试.txt");
		String contain = "月落乌啼霜满天\n江枫渔火对愁眠";
		System.out.println("字符串长度:" + contain.length());
		_FileWriter(file, contain);
		System.out.println("读取文件 " + file.getName() + " 为:");
		System.out.println(_FileReader(file));
		_File.delete(file.getAbsolutePath());
		explain();
	}

	/** FileReader 文件字符流读取文件 */
	public static String _FileReader(File file) {
		if( !file.exists()){
			System.out.println("没有找到要读取的文件。");
			return null;
		}		
		System.out.println("文件长度为:" + file.length());
		char[] tem = new char[(int) file.length()];
		try {
			FileReader fr = new FileReader(file);
			fr.read(tem);
			fr.close();
		} catch (Exception e) {
		}
		return new String(tem);
	}

	/** FileWriter 文件字符流写入文件, 不会刷新 */
	public static void _FileWriter(File file, String contain) {
		if (!file.exists()) {
			System.out.println("要写入的文件不存在,即将创建...");
			try {
				_File.creatFolder(file.getParent());
				_File.creatFile(file.getAbsolutePath());
			} catch (Exception e) {
				System.out.println(" 创建文件失败!");
			}
		}
		try {
			FileWriter fw = new FileWriter(file, true);//附加,为true时不刷新,false刷新。
			fw.write(contain);
			fw.flush();
			fw.close();
			System.out.println("写入文件完成!");
		} catch (Exception e) {
		}
	}
	
	/** 注释 */
	private static void explain(){
		System.out.println("---------------------");
		System.out.println("在file.length() 中,一个汉字的长度是2");
		System.out.println("在char[] 、String 中,一个汉字的长度是1");
		System.out.println("---------------------");
	}

}

package com.zhp.method.io;

import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;

public class _File {

	public static void main(String[] args) {
		creatFile("F:\\eclipse[重要]\\20140310_FileTest.txt");
		pause();
		delete("F:\\eclipse[重要]\\20140310_FileTest.txt");
		creatFolder("F:\\eclipse[重要]\\testFolder");
		pause();
		delete("F:\\eclipse[重要]\\testFolder");
		startExe("C:\\Windows\\Notepad.exe");
	}

	/** 创建文件 */
	public static void creatFile(String fileName) {
		File file = new File(fileName);
		try {
			file.createNewFile();// must surround by try-catch;
			System.out.println("_File:创建文件 " + file.getName() + " 成功!");
		} catch (IOException e) {
		}
	}

	/** 删除文件 */
	public static void delete(String fileName) {
		File file = new File(fileName);
		file.delete();
		System.out.println("_File:文件已删除");
	}

	/** 暂停 */
	public static void pause() {
		System.out.println("Input anything to continue.");
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		try {
			@SuppressWarnings("unused")
			String c = br.readLine();
			br.reset();
			br.close();
		} catch (Exception e) {
		}
	}

	/** 创建目录 */
	public static void creatFolder(String menuName) {
		File file = new File(menuName);
		file.mkdirs();
		System.out.println("_File:创建目录 " + menuName + " 成功!");
	}

	/** 运行可执行文件 */
	public static void startExe(String appName) {
		try {
			Runtime r = Runtime.getRuntime();
			File file = new File(appName);
			r.exec(file.getAbsolutePath());
		} catch (Exception e) {
			System.out.println("_File:运行可执行文件时出错!");
		}
	}

}

package com.zhp.method.io;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.Scanner;

public class _Other {
	
	
	public static void main(String[] args) {
		System.out.println("由用户自己输入的输入流:");
		System.out.println("-请输入地址(随便输)");
		_InputStreamReader1();
		System.out.println("----------------------");
		System.out.println("由文件读取的输入流");
		System.out.println("-从文件中读取的内容是:");
		_InputStreamReader2();
	}
	
	/** PrintWriter的错误系统不会报告给用户,但仍需要 surround with try / catch */
	public static void _PrinterWriter(){
		String s = null;
		Scanner in = new Scanner(System.in);//输入一个文件地址,这里率随便输入即可
		s = in.next();
		try {
			PrintWriter pw = new PrintWriter( s );
			pw.close();
		} catch (FileNotFoundException e) {
			System.out.println("输入的文件地址有错!");//无论是否有错,这句话都不会输出来。
		}
		in.close();		
	}
	
	/** 由用户自己输入的输入流 */
	public static void _InputStreamReader1(){
		try {
			InputStreamReader isr = new InputStreamReader(System.in);
			BufferedReader br = new BufferedReader(isr);
			System.out.println( br.readLine());
		} catch (Exception e) {
		}
	}
	
	/** 由文件读取的输入流 */
	public static void _InputStreamReader2(){
		try {
			FileInputStream fis = 
					new FileInputStream("F:\\eclipse[重要]\\Other.txt");
			InputStreamReader isr = 
					new InputStreamReader(fis);
			BufferedReader br =
					new BufferedReader(isr);
			String s = null;
			while((s = br.readLine()) != null){
				System.out.println(s);
			}
			br.close();
		} catch (Exception e) {
			System.out.println("有错!");
		}
	}

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值