FileInputStream 读取文件内容「建议收藏」

FileInputStream 读取文件内容「建议收藏」publicclassTest{publicstaticvoidmain(String[]args)throwsIOException{finalStringpath="D:/1.txt"; //1、得到数据文件 Filefile=newFile(path); //2、建立数据通道 FileInputStreamfile…

大家好,又见面了,我是你们的朋友全栈君。

public class Test {
    public static void main(String[] args) throws IOException {
        final String path = "D:/1.txt";
	//1、得到数据文件
	File file = new File(path); 
	//2、建立数据通道
	FileInputStream fileInputStream = new FileInputStream(file);   
	byte[] buf = new byte[1024];  
	int length = 0;
	//循环读取文件内容,输入流中将最多buf.length个字节的数据读入一个buf数组中,返回类型是读取到的字节数。
	//当文件读取到结尾时返回 -1,循环结束。
	while((length = fileInputStream.read(buf)) != -1){   
	    System.out.print(new String(buf,0,length));
	}
	//最后记得,关闭流
	fileInputStream.close();
    }
}

读取结果:

FileInputStream 读取文件内容「建议收藏」

 

FileInputStream类的其他常用方法:

注:以下代码的输出均以上面的1.txt文件为例。

1、available()  

返回类型: int

作用:返回下一次对此输入流调用的方法可以不受阻塞地从此输入流读取(或跳过)的估计剩余字节数。即输入流中当前的字节数。

System.out.println(fileInputStream.available());

输出:10 

2、skip(long n)

返回类型:long

作用:从输入流中跳过并丢弃n个字节的数据

System.out.println(fileInputStream.skip(4));

输出:4

跳过前面4个字节,所以读取到的数据为: ,世界(一个汉字等于两个字节)

FileInputStream 读取文件内容「建议收藏」

3、read()

返回类型:int

作用:从输入流中读取一个数据字节

System.out.println(fileInputStream.read());

输出:196

4、read(byte[] b,int off,int len)

返回类型:int

作用:从输入流中读取len个字节的数据到byte数组中,数据存放在byte数组中从off开始后的len个空间内。

System.out.println(fileInputStream.read(buf,3,4));
System.out.println(new String(buf,0,7));

输出: 从输入流中读取4个字节数据,存放到buf数组的 3,4,5,6个空间里,所以在输出的时候,buf前3个空间为空,输出□,后面4个空间输出对应的值:你好。

FileInputStream 读取文件内容「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131704.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python读取txt文件封装方法版「建议收藏」

    #-*-coding:utf-8-*-importnumpyasnpdefreadData(file,cols):file=open(file)lines=file.readlines()rows=len(lines)datamat=np.zeros((rows,cols))row=0forlineinlin…

    2022年4月13日
    42
  • 【FAQ】SpingMVC实现集合參数(Could not instantiate bean class [java.util.List])

    【FAQ】SpingMVC实现集合參数(Could not instantiate bean class [java.util.List])

    2021年12月7日
    63
  • java switch条件_Java switch 条件语句用法详解[通俗易懂]

    java switch条件_Java switch 条件语句用法详解[通俗易懂]首页>基础教程>循环条件语句>条件语句switchJavaswitch条件语句用法详解switchcase语句在很多编程语言中的功能都是等于条件判断,java中为多路分支选择流程专门提供了switch语句,switch语句根据多个表达式的值,选择运行多个操作中的一个。当需要对选项进行等值判断时,使用switch语句更加简洁明了。switch的case语句可以处…

    2022年7月14日
    47
  • idea2021.7.16激活码(JetBrains全家桶)「建议收藏」

    (idea2021.7.16激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月21日
    51
  • 2.1.1 操作系统之进程的定义、特征、组成、组织

    文章目录1.进程的定义(1)程序的概念(2)进程的概念(2)进程的定义2.进程的特征3.进程的组成4.进程的组织(1)链接方式(2)索引方式1.进程的定义(1)程序的概念(2)进程的概念一个进程可以包含多个程序(2)进程的定义2.进程的特征3.进程的组成而其中最重要的就是进程控制块PCB(ProcessControlBlock)PCB简介:&nbsp…

    2022年4月13日
    37
  • Jmeter安装及配置教程

    Jmeter安装及配置教程Jmeter安装及配置教程一、JMeter的安装配置过程二、JMeter的运行和语言设置一、JMeter的安装配置过程安装配置过程:第一步安装JDK,配置JDK路径到Oracle官方网站下载最新版本的jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html这里使用的操作系统是Windows,选最后一个下载,下载完直接运行安装。安装完设置一下环境参数。JAVA_HOME:D:\

    2022年5月3日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号