`

Java中通过输入输出流进行文件的读写

阅读更多

流是一个很形象的概念,当程序需要读取数据时就会开启一个通向数据源的数据流,这个数据源可以是文件,内存或者是网络连接。类似的,当程序需要写入文件时,就会开启一个通向目的地的流。这里的数据源和目的地都可以通过File类中构造函数的参数进行赋值。

Java流的分类

按流向分:
输入流: 程序可以从中读取数据的流。
输出流: 程序能向其中写入数据的流。
按数据传输单位分:
字节流: 以字节为单位传输数据的流
字符流: 以字符为单位传输数据的流
按功能分:
节点流: 用于直接操作目标设备的流
过滤流: 是对一个已存在的流的链接和封装,通过对数据进行处理为程序提供功能强大、灵活的读写功能。

 

java.io常用类

JDK所提供的所有流类位于java.io包中,都分别继承自以下四种抽象流类。
InputStream:继承自InputStream的流都是用于向程序中输入数据的,且数据单位都是字节(8位)。
OutputStream:继承自OutputStream的流都是程序用于向外输出数据的,且数据单位都是字节(8位)。
Reader:继承自Reader的流都是用于向程序中输入数据的,且数据单位都是字符(16位)。
Writer:继承自Writer的流都是程序用于向外输出数据的,且数据单位都是字符(16位)。
 此文简单实现了Java I/O中的对File(文件的处理),File类是独立于系统平台的,利用其构造函数创建出相应的File对象;再调用其中的方法实现对文件各个属性方面的操作。
构造函数:
File( String  path)
File(String path, String FileName)
File(File dir, String name)
File 类提供了一种与机器无关的方式来描述一个文件对象的属性,通过类File所提供的方法可以得到文件或目录的描述信息,这主要包括名称、所在路经、可读性、可写性、文件的长度等,还可以生成新的目录、改变文件名、删除文件、列出一个目录中的所有文件的操作。
以下是对文件进行读出和写入的简单实现:
package com.czj_IO;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;

public class TestIO {

	/**
	 * 读文件的方法
	 * @param fName文件绝对路径
	 */
	public void readFile(String fName){
		try {
			FileInputStream  fis = new FileInputStream(fName);
			int n=fis.read();//读取下一个字节
			//循环读写
			while(n!=-1){
				System.out.println("读到的字节是"+n);
			    n = fis.read();
			}
			fis.close();//关闭输入流
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	/**
	 * 写文件的方法
	 * @param msg写入的内容
	 * @param s文件绝对路径
	 * @throws Exception抛出异常
	 */
	public void writeFile(String msg,String s) throws Exception{
		try {
			FileOutputStream fos = new FileOutputStream(s,false);
			byte[] b = msg.getBytes();//得到组成字符串的字节
			fos.write(b);
			fos.close();//关闭输出流 
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
	}
	
	public static void main(String[] args) {
		TestIO tjm = new TestIO();
		tjm.readFile("E://类与对象总结.txt");
		try {//此语句运行两次必须改写入文件的文件名或删除上次写入的文件,否则报错(已有该文件)
			tjm.writeFile("hello! 你好!~~~~", "E://写入的文件1.txt");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
 
                                                                                                                                    梣梓cenzi
                                                                                                                                   2015-05-04
 
分享到:
评论

相关推荐

    Java_输入输出流及文件读写详解

    Java_输入输出流及文件读写详解

    Java输入输出流及文件读写详解

    Java输入输出流及文件读写详解;Java输入输出流及文件读写详解。

    Java_输入输出流及文件读写详解.docx

    Java_输入输出流及文件读写详解

    java中的标准输入输出流

    本文档涵盖了java中标准输入输出流,包含InputStream、OutputStream字节流还有字符流以及对文件的读写操作等

    Java流(文件读写操作)

    – 输出流:只能向其写入字节数据,而不能从中读取数据 • 按照流所处理的数据类型 – 字节流:用于处理字节数据。 – 字符流:用于处理Unicode字符数据。 • 按照流所处理的源 – 节点流:从/向一个特定的IO设备读/...

    java 对象输入输出流读写文件的操作实例

    主要介绍了java 对象输入输出流读写文件的操作实例的相关资料,这里使用实现Serializable接口,需要的朋友可以参考下

    Java考试前总结(包含io输入输出流/线程/特殊for语句/文件读写的总结)

    里面有我刚开始学习Java时,关于io输入输出流的总结及代码,还有线程的两种实现方法的总结及代码展示,文件的读写展示,还有Java中特殊for语句的展示!供初学者学习参考!

    java输入输出流实习题

    1. 撰写类MyLog,实现接口Loggable,完成在本地文件“MyLog.log”文件中的日志读写,要求记录的日志内容包括:当前时间,日志类型,日志内容。要求可以累加写入日志文件。

    Json字符串格式化java工具和IO流读写管理文件工具

    1.非常简练易懂的JSON格式化小程序 2.实用的IO流管理,读写文件小程序,可改造 3.实际开发中临时写的自己用的,够用,不够完美

    Java的输入与输出.ppt )

    大部分程序都需要数据输入/输出处理,比如从键盘读取数据、向屏幕中输出数据、从文件中读或者向文件中写数据、在网络连接时进行读写操作等。在Java开发环境中,主要是由包java.io中提供的一系列的类和统一的接口来...

    java_io详解

    Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。此外,Java也对块传输提供支持,在核心库java.nio中采用的便是块IO。关于NIO我们在后面还有专门的讨论。  流IO的好处是简单...

    Java的输入输出流系统中除光盘外的最后一个系统盘中的文件夹显示

    3.编写应用程序,在指定目录下创建一个文件随机读写流,在第11题的文件1.dat的后面写入逻辑值true、写入字符’a’、 写入字符串“程序设计”,然后读取文件中写入这些数据并在屏幕上输出。 4.编写应用程序,把某个...

    彻底明白java中的IO流

    Java的核心库java.io提供了全面...Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。在具体使用中很多初学者对Java.io包的使用非常含糊,本文将详细解说关于Java.io的使用…………

    第6章(输入输出流).ppt

    第6章 输入/输出流 6.1 输入/输出流 6.2 文件读写 面向字符的流——Reader和Writer类

    Java_08 输入输出1

    第六章 输入/输出流和文件6.1 输入/输出流6.2 文件读写6.1 输入/输出流通常程序需要从外部获取/输出信息这个“外部”范围很广,包括诸如键盘、显示器、文

    Java的DataInputStream和DataOutputStream数据输入输出流

    里我们来看一下Java的DataInputStream和DataOutputStream数据输入输出流的使用示例,两个类分别继承于FilterInputStream和FilterOutputStream:

    Java的IO流讲解代码: File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型

    它包含了常见的IO类和方法的使用示例,旨在帮助理解和掌握Java中的输入输出操作。 包含: File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型字节流、打印流、对象序列化流、字节数组流)...

    用Java实现的图片加密程序

    Java IO 图片加密,使用Java的stream流进行文件的读写,实现图片的加密和解密!

    java输入输出

    java输入输出,java中的重难点详解,记得好评哦

    java IO流总结.md

    2.数据的流向:输入流、输出流 3.流的角色:节点流、处理流 节点流:直接从数据源或目的地读写数据 处理流:不直接连接到数据源或目的地,而是“连接”在已存在的流(节点流或处理流)之上,通过对数据的...

Global site tag (gtag.js) - Google Analytics