FileInputStream 的读取操作
package xinhuiji_day07;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
public class TestFileInputStream {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// 1 ,先定义要操作的文件
String str = File.separator; //得到当前系统的盘符
//String path = File.separator+"home"+File.separator+"han"+File.separator+"FileOutPutStream.txt";
String path = str+"home"+str+"han"+str+"FileOutPutStream.txt";
File file = new File(path);
// 2,通过子类实例化父类
InputStream in = null;
in = new FileInputStream(file);
//byte[] bytes = new byte[1024];//直接这样开辟空间的话,我们并不知道file的实际空间是多大,会造成占用大量内存的
//的结果,我们可以通过File类先获得file的大小,再定义数组的大小
byte[] bytes = new byte[(int) file.length()]; // 定义数组用于存储读到的数据
// 3 读数据
//第一种方法
// int len = in.read(bytes);
// System.out.println("向数组中写入的字符长度:"+len);
//第二种方法
for(int i = 0;i<file.length();i++){
bytes[i] = (byte) in.read();
}
//第三种方法
// String info = new String(bytes,0,len);
String info = new String(bytes);
System.out.println(info);
// 4 。关闭输入流
in.close();
}
}
/////////////////////////////////////////////////////////////////////////////
//第三种方法 。前两种方法都是知道file的长度,如果不知到file的长度就应该使用read()方法
byte[] bytes = new byte[1024];
int len = 0;//用于记录读到的字符个数
int temp = 0;//用于记录in.read()的返回值
//read()方法只有在读到文件末尾时返回值为-1
while((temp = in.read()) != -1){
bytes[len] = (byte) temp;
len++;
}
FileInputStream 的读取操作的更多相关文章
- java 的文件读取操作
/** * @param filePath 文件的全路径 * 返回我们读取到的文件内容 * **/ public static String readFile(String filePath) { F ...
- JAVA之旅(二十六)——装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片
JAVA之旅(二十六)--装饰设计模式,继承和装饰的区别,LineNumberReader,自定义LineNumberReader,字节流读取操作,I/O复制图片 一.装饰设计模式 其实我们自定义re ...
- Android设备与外接U盘实现数据读取操作
现在越来越多手机支持OTG功能,通过OTG可以实现与外接入的U盘等USB设备实现数据传输.关于OTG,可以参考: http://blog.csdn.net/srw11/article/details/ ...
- Java 实现Excel的简单读取操作
JAVA实现Excel表单的简单读取操作 实现Excel表单的简单读取操作,首先要导入相关的jar包: 如图所示: 此处贴上代码: public static List<List<Stri ...
- access数据库频繁读取操作会出现 System.Data.OleDb.OleDbException 的异常解决
asp.net access数据库 本来想着打开一个access数据库连接后,不关闭,下次操作数据了,直接拿来用,谁知道连着测试64次后(大概这么多次),就会出现System.Data.OleDb.O ...
- Perl中文件读取操作
Perl中文件读取操作 http://blog.csdn.net/yangxuan12580/article/details/51506216
- Java 对文件的读取操作
package pack; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; ...
- properties配置文件读取操作总结【java笔记】
声明:本文所有例子中的 properties 文件均放在 src 目录下,ecclipse 软件自动增加 一.基本概念 1.1 properties文件,存储格式 键=值. properties文件 ...
- java:OutputStream和InputStream 输出输入流,FileOutputStream,FileInputStream写入读取流
1.在java中stream代表一种数据流(源),javaio的底层数据元,---(想像成水龙头)2.任何有能力产生数据流(源)的javaio对象就可以看作是一个InputStream对象既然它能产生 ...
随机推荐
- Eclipse与MyEclipse增加主题
下载所需文件 下载地址:https://pan.baidu.com/s/1slq9lFn 如果eclipse和myeclipse里的MyEclipse 10\dropins存在features和plu ...
- godaddy虚拟空间的伪静态配置
原文发布时间为:2011-02-24 -- 来源于本人的百度文章 [由搬家工具导入] 只要在web.config文件的<configuration>子节点下 加入以下节点,即可实现 伪静态 ...
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---51
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- fastboot flash image usage
// // power on mobile phone // power on mobile phone // // reboot bootloader // android/out/host/lin ...
- 《30天学习30种新技术》-Day 15:Meteor —— 从零开始创建一个 Web 应用
目录:https://segmentfault.com/a/1190000000349384 原文: https://segmentfault.com/a/1190000000361440 到目前为止 ...
- Codeforces 506D Mr. Kitayuta's Colorful Graph(分块 + 并查集)
题目链接 Mr. Kitayuta's Colorful Graph 把每种颜色分开来考虑. 所有的颜色分为两种:涉及的点的个数 $> \sqrt{n}$ 涉及的点的个数 $<= ...
- 网站安全测试工具GoLismero
网站安全测试工具GoLismero GoLismero是一款开源的安全测试框架.目前,它的测试目标主要为网站.该框架采用插件模式,实现用户所需要的功能.GoLismero默认自带了导入.侦测.扫描.攻 ...
- CSS定位与布局:普通流
CSS定位与布局属于CSS的基础,也是CSS布局影响很大的一部分,具体主要包括三种定位与布局机制( Positioning schemes):普通流,浮动,绝对定位. 其实除了这三种之外,还有一些定位 ...
- 基于Java实现的选择排序算法
选择排序和冒泡排序同样是基础排序算法,现在也做个学习积累. 简述 选择排序算法较为稳定,基本上都是O(n2)的时间复杂度,规模越小排序越快,不需要占用额外空间.其实选择排序原理很简单,就是在未排序序列 ...
- php 技术知识点汇总
consul : 服务发现 做服务发现的框架常用的有 zookeeper eureka etcd consul zookeeper, php中的libzookeeper PHP使用 swagger ...