Java中IO流文件读取、写入和复制的实例

//构造文件File类
File f=new File(fileName);

//判断是否为目录
f.isDirectory();

//获取目录下的文件名
String[] fileName=f.list();

//获取目录下的文件
File[] files=f.listFiles();

1、Java怎么读取文件

package com.yyb.file;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

/*
 * 读取文件:
 * 1、找到指定的文件
 * 2、根据文件创建文件的输入流
 * 3、创建字节数组
 * 4、读取内容,放到字节数组里面
 * 5、关闭输入流
 */
public class FileRead {

	public static void main(String[] args) {
		// 构建指定文件
		File file = new File("E:" + File.separator + "hello.txt");
		InputStream in = null;
		try {
			// 根据文件创建文件的输入流
			in = new FileInputStream(file);
			// 创建字节数组
			byte[] data = new byte[1024];
			// 读取内容,放到字节数组里面
			in.read(data);
			System.out.println(new String(data));
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 关闭输入流
				in.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

}

2、Java怎么写入文件

package com.yyb.file;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

/*
 * 写入文件:
 * 1、找到指定的文件
 * 2、根据文件创建文件的输出流
 * 3、把内容转换成字节数组
 * 4、向文件写入内容
 * 5、关闭输入流
 */
public class FileWriter {

	public static void main(String[] args) {
		// 构建指定文件
		File file = new File("E:" + File.separator + "hello.txt");
		OutputStream out = null;
		try {
			// 根据文件创建文件的输出流
			out = new FileOutputStream(file);
			String message = "我是好人。";
			// 把内容转换成字节数组
			byte[] data = message.getBytes();
			// 向文件写入内容
			out.write(data);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 关闭输出流
				out.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

}

3、Java怎么复制文件

<span style="font-size:18px;">package com.yyb.file;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
/*
 * 实现思路:
 * 1、构建源文件与目标文件
 * 2、源文件创建输入流,目标文件创建输出流
 * 3、创建字节数组
 * 4、使用循环,源文件读取一部分内容,目标文件写入一部分内容,直到写完所有内容
 * 5、关闭源文件输入流,目标文件输出流
 */
public class FileCopy {

	public static void main(String[] args) {
		// 构建源文件
		File file = new File("E:" + File.separator + "HelloWorld.txt");
		// 构建目标文件
		File fileCopy = new File("D:" + File.separator + "HelloWorld");
		InputStream in = null;
		OutputStream out = null;
		try {
			// 目标文件不存在就创建
			if (!(fileCopy.exists())) {
				fileCopy.createNewFile();
			}
			// 源文件创建输入流
			in = new FileInputStream(file);
			// 目标文件创建输出流
			out = new FileOutputStream(fileCopy, true);
			// 创建字节数组
			byte[] temp = new byte[1024];
			int length = 0;
			// 源文件读取一部分内容
			while ((length = in.read(temp)) != -1) {
				// 目标文件写入一部分内容
				out.write(temp, 0, length);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 关闭文件输入输出流
				in.close();
				out.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

}</span><span style="font-size: 24px;">
</span>

以上这篇Java中IO流文件读取、写入和复制的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2017-10-22

java IO流文件的读写具体实例

引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能找到,但自己总感觉不是很踏实,所以今天就抽空看了看java IO流的一些操作,感觉还是很有收获的,顺便总结些资料,方便以后进一步的学习... IO流的分类:1.根据流的数据对象来分:高端流:所有的内存中的流都是高端流,比如:InputStreamReader  低端流:所有的外界设备中的流都是低端流

Java字符流和字节流对文件操作的区别

记得当初自己刚开始学习Java的时候,对Java的IO流这一块特别不明白,所以写了这篇随笔希望能对刚开始学习Java的人有所帮助,也方便以后自己查询.Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中.而字符流操作的最小单位则是字符.可以先看一下IO流的概述: 下面首先是通过字符流对文件进行读取和写入: package lib; import java.

java写入文件的几种方法分享

一,FileWritter写入文件 FileWritter, 字符流写入字符到文件.默认情况下,它会使用新的内容取代所有现有的内容,然而,当指定一个true (布尔)值作为FileWritter构造函数的第二个参数,它会保留现有的内容,并追加新内容在文件的末尾. 1. 替换所有现有的内容与新的内容. new FileWriter(file);2. 保留现有的内容和附加在该文件的末尾的新内容. 复制代码 代码如下: new FileWriter(file,true); 追加文件示例 一个文本文件,

Java IO中字节流复制图片实现代码

Java IO--字节流复制图片实例 字节流用来操作图片.视屏.音频(进制文件) 实例代码: package learn; import java.io.*; public class Learn{ public static void main(String[] args) throws IOException { File file1=new File("D:/a.jpg"); File file2=new File("D:/b.jpg"); byte[] b=

简单总结Java IO中stream流的使用方法

Java语言的输入输出功能是十分强大而灵活的,对于数据的输入和输出操作以"流"(stream)的方式进行.J2SDK提供了各种各样的"流"类,用以获取不同种类的数据,定义在包java.io中.程序中通过标准的方法输入或输出数据. Java中的流可以从不同的角度进行分类: 按照流的方向不同:分为输入流和输出流. 按照处理数据单位的不同:分为字节流(8位)和字符流(16位). 按照功能不同:分为节点流和处理流. 节点流:是可以从一个特定的数据源(节点)读写数据的流(例如

java编程中字节流转换成字符流的实现方法

java编程中字节流转换成字符流的实现方法 import java.io.*; /*readLine方法是字符流BufferReader类中的方法 * 而键盘录入的方法是字节流InputStream的方法 * 那么能不能将字节流转成字符流再使用字符流缓冲区中的readLine方法呢? * * InputStreamReader类是字节流转向字符流的桥梁.(它本身是一个字符流所以在构造时接受一个字节流) * * */ public class TransStreamDemo { public st

IO中flush()函数的使用代码示例

The java.io.Writer.flush() method flushes the stream. If the stream has saved any characters from the various write() methods in a buffer, write them immediately to their intended destination. Then, if that destination is another character or byte st

Java实现中序表达式的实例代码

什么是中序表达式 前序(前缀)表达式要求每一个操作符出现在其操作数之前.一般不用. 写表达式的后序表达式一般是为了便利于计算机编程中栈的实现,所以用的较多. 具体代码如下所示: package 表达式求值; import java.util.Stack; /* * 中序表达式求值实现 */ public class CenterExpression { public double evaluate(String expression){ //传入中序表达式 char [] ex = expres

Java编程中字节流与字符流IO操作示例

 IO流基本概念 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的对象都是在IO包上 流按操作数据分为两种:字节流和字符流 流按流向分为:输入流,输出流. 字节流的抽象基类:InputStream,OutputStream 字符流的抽象基类:Reader,Writer 注:由这4个类派生出来的子类名称都是以其父类名作为子类名的后缀. 如:InputStream的子类:FileInputStream 如:Reader的子类FileReader 如创建一个F

asp中获取内容中所有图片与获取内容中第一个图片的代码

复制代码 代码如下: '===================================== '获取内容中所有图片 '===================================== Function Get_ImgSrc(ByVal t0) Dim t1,Regs,Matches,Match t1="" IF Not(IsNull(t0) Or Len(t0)=0) Then Set Regs=New RegExp Regs.Pattern="<img

Java IO流 文件的编码实例代码

•文件的编码 package cn.test; import java.io.UnsupportedEncodingException; public class Demo15 { public static void main(String[] args) throws UnsupportedEncodingException { String str = "你好ABC123"; byte[] b1 = str.getBytes();//转换成字节系列用的是项目默认的编码 for (

深入解析Java编程中面向字节流的一些应用

文件输入输出流 文件输入输出流 FileInputStream 和 FileOutputStream 负责完成对本地磁盘文件的顺序输入输出操作. [例]通过程序创建一个文件,从键盘输入字符,当遇到字符"#"时结束,在屏幕上显示该文件的所有内容 import java.io.*; class ep10_5{ public static void main(String args[]){ char ch; int data; try{ FileInputStream a=new FileI

java Servlet 实现动态验证码图片示例

整理文档,搜刮出一个java Servlet 实现动态验证码图片的代码,稍微整理精简一下做下分享. package com.hacker; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.BufferedReader; import java.io.ByteArrayOutputStream; i