我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java inputstream和outputstream使用详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java inputstream和outputstream使用详解

计算机在进行I/O时都是以流的形式来进行,Java中所有流的相关操作的类,都继承自以下四个抽象类。

输入流 输出流
字节流 InputStream OutputStream
字符流 Reader Writer

InPutStream的实现


import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
 
public class TestFileInPutStream {
	public static void main(String[] args) {
		try {
			File file = new File("D:/test/testIO.java");
			// 如果文件存在,读取文件中的内容,并在控制台输出
			if (file.exists()) {
				InputStream in = new FileInputStream(file);
				int a = 0;
				while ((a = in.read()) != -1) {
					System.out.print((char) a);
				}
				in.close();
 
			} else {
				// 如果文件不存在返回文件不存在
				System.out.println("文件不存在");
 
			}
 
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
 
	}
}

在D盘已经存在testIO文件如下:

将文件中的内容输出到控制台,结果如下:

OutPutStream的实现


import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
 
public class TestOutPutStream {
	private static InputStream in;
	private static OutputStream out;
	public static void main(String[] args) {
		
		try {
			in = new FileInputStream("D:/test/testIO.java");
			if(in == null){
				//原文件不存在
				System.out.println("原文件不存在");
			}else{
				//原文件存在,判断目标文件是否存在
				File file = new File("D:/test/testIOO.txt");
				if(!file.exists()){
					//目标文件不存在,创建目标文件
					file.getParentFile().mkdirs();
					file.createNewFile();
				}
				//将原文件内容读取到目标文件
				out = new FileOutputStream(file);
				int a = 0;
				while((a = in.read()) != -1){
					out.write(a);
				}
				
			}
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			//流关闭
			try {
				if(in != null){
					in.close();
				}
				if(out != null){
					out.close();
				}
				
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
}

D盘中原文件存在,在D盘中创建了目标文件

注意:在判断原文件是否存在时,直接判断字节流文件对象是否存在

到此这篇关于Java inputstream和outputstream使用详解的文章就介绍到这了,更多相关Java inputstream和outputstream内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java inputstream和outputstream使用详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java对文件的写入和读取 (File类详解以及Input,OutputStream用法,注意事项)

Java中,操作文件的类有很多, 核心的部分是File类,InputStream,OutputStream类 文章目录 File类通过File类创建文件通过File类创建目录 文件内容的读写 -- 数据流InputStream方
2023-08-18

Java注解简介和使用详细讲解

Java语言中的类、构造器、方法、成员变量、参数等都可以被注解进行标注,这篇文章主要介绍了Java注解的介绍和使用详细讲解,需要的朋友可以参考下
2023-02-28

Java 中 Class Path 和 Package的使用详解

这篇文章主要介绍了Java 中 Class Path和Package的使用详解,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
2022-11-13

Java注解的介绍和使用详细讲解

文章目录 注解注解基本介绍自定义注解元注解注解解析 注解 注解基本介绍 注解概述: Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。 Java 语言中的类、构造器、方法
2023-08-16

Java使用AES加密和解密的实例详解

Java使用AES加密和解密的实例详解前言:AES的基本要求是,采用对称分组密码体制,密钥长度的最少支持为128、192、256,分组长度128位,算法应易于各种硬件和软件实现。1998年NIST开始AES第一轮分析、测试和征集,共产生了1
2023-05-31

JAVA中ResourceBundle使用详解

ResourceBundle是Java中一个用来读取本地化资源的类。它可以根据不同的语言环境加载不同的资源文件,使得程序能够根据用户的语言环境显示对应的文字、图标等。使用ResourceBundle读取资源文件的步骤如下:1. 准备资源文件
2023-09-13

Java中如何使用Callable和Future接口详解

本篇文章给大家分享的是有关Java中如何使用Callable和Future接口详解,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Runnable是一个接口,而Thread是Ru
2023-06-20

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录