Java文件 ---流
分类
根据数据走向,分为输入流、输出流
根据处理的数据类型,分为字节流、字符流
字节流
可以处理所有类型的数据,如MP3、图片、文字、视频等。在读取时,读到一个字节就返回一个字节。
在Java中对应的类都以“Stream”结尾
字符流
仅能够处理纯文本数据,如txt文本等。在读取时,读到一个或多个字节,先查找指定的编码表,然后将查到的字符返回。
在Java中对应的类都以“Reader”或“Writer”结尾
FileRearder与InputStreamRearder的区别
该类与它的父类InputStreamReader的主要不同在于构造函数,主要区别也就在于构造函数!
从InputStreamReader的构造函数中看到,参数为InputStream和编码方式,可以看出,
当要指定编码方式时,必须使用InputStreamReader类;而FileReader构造函数的参数与FileInputStream同,为File对象或表示path的String,可以看出,当要根据File对象或者String读取一个文件时,用FileReader;
此类可以指定从文件某个位置开始读取/写入数据,在写入数据时,若文件不存在,会自动创建文件。与线程何用可分段下载数据。
Java文件 ---流的更多相关文章
- Java文件流应用:剪切文件
剪切的实际操作是: 第一步,先复制文件到指定位置, 第二步,删除原文件,这样就实现了剪切 与复制文件相比,多了一步删除文件 注意:删除文件必须在流关闭后,才能删除,否则,删除不了. 实例代码 pack ...
- Java文件流应用:复制文件
文件复制步骤 代码: package 文件流应用复制文件; import java.io.File; import java.io.FileInputStream; import java.io.Fi ...
- Java 文件流操作.
一.概念 在Java中,文件的输入和输出是通过流(Stream)来实现的.一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是 Internet 上的某个 URL.对 ...
- Java文件流下载并提示文件不存在
做文件下载功能的时候,一般使用流的形式下载文件, 如果源文件不存在,下载页面可能就会没有提示,或者一片空白 用户操作之后可能一头雾水,那如何友好提示呢? 想到的有两种 1.可以尝试下载一个名称为:文件 ...
- Java文件流之练习
1 )将"今年是反法西斯胜利70周年,举国欢庆,所以要放假啦" 字符串 使用文件字符输出流 写入到oldhappy.txt文件中,复写10000行, 要求换行 在文件的开头写入当前 ...
- java文件流操作
package common; import java.io.*;import java.math.BigDecimal;import java.util.ArrayList;import java. ...
- java中关于IO流的知识总结(重点介绍文件流的使用)
今天做软件构造实验一的时候,用到了java文件流的使用,因为之前学的不是很踏实,于是决定今天好好总结一下, 也方便以后的回顾. 首先,要分清IO流中的一些基础划分: 按照数据流的方向不同可以分为:输入 ...
- Java:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- Java总结——文件&流
最近学习了Java的输入输出,脑子里有两点乱,不过比之前的思路好像清晰了很多.脑子刚刚接收这些信息的时候,整个就是懵逼的,又是文件又是流的,文件到底干嘛的,流到底干嘛的?恩,后来,想了想,其实也不难理 ...
随机推荐
- Ubuntu上安装Samba服务器实现家庭共享
如何在Ubuntu上安装Samba服务器 大多数Linux发行版都包含Samba. 要在Ubuntu上安装Samba,只需运行: sudo apt install samba 要检查您的Samba版本 ...
- iOS 收藏的笔记
目录 UI 资料类 网络篇 图表 动画 菜单栏 数据存储和数据库 第三方库 社交分享 刷新 视频音频 其他 阅读 JS 导航 系统 支付 书籍 工具类 完整项目收集 DEMO UI http://ww ...
- Android客户端与PC服务端、android服务端通过WiFi通信
前期准备:我的是Linux Mint操作系统(总之折腾的过程中怀疑过是不是系统的问题),首先是要创建wifi热点给android手机使用,这个时候笔记本作为通信的服务器端,android手机作为客户端 ...
- wow.js+animate.css——有趣的页面滚动动画
今天偶然间发现了一个使用特别简单的页面动画效果,还挺不错的,玩了一个上午,现在介绍一下这个滚动动画: 一.使用方法: 1.下载animate.css 2.下载wow.js 3.引用文件,像这样: &l ...
- 利用临时表实现CTE递归查询
一.CTE递归查询简介 --CTE递归查询终止条件在TSQL脚本中,也能实现递归查询,SQL Server提供CTE(Common Table Expression),只需要编写少量的代码,就能实现递 ...
- 【Python音乐生成】可能有用的一些Python库
1,Python-MIDI,很多操作库的前置库.作者提供了一个python3的branch.git clone下来之后注意切换到这个branch之后再运行setup.py. 实际使用的时候,使用 im ...
- 在 Windows下用 Visual Studio 编译 OpenSSL 1.1.0
到OpenSSL官方网站下载OpenSSL源代码包 1.下载 openssl-1.1.0.tar.gz 2.安装 ActivePerl, 可以到http://www.activestate.com/a ...
- GridView的 PreRender事件与范例--GridView + CheckBox,点选多列资料(复选删除)
GridView的 PreRender事件与范例--GridView + CheckBox,点选多列资料(复选删除) 之前有一个范例,相同的结果可以用两种作法来实践 [GridView] 资料系结表达 ...
- MicroService 微服务提供者搭建
本机IP为 192.168.1.102 1. 新建Maven项目 microservice 2. pom.xml <project xmlns="http://maven. ...
- cin对象的一些常用方法使用总结
>> 最初定义的是右移,当但是出现在 cin >>中的时候这个符号被重载了,变成了一个流操作,在用户通过键盘输入信息的时候,所有内容都会先直接存储在一个叫输入缓冲区的的地方,c ...