文件读取(FileInputStream 读取本地文件)

文件读取(FileInputStream 读取本地文件)使用FileInputStream读取本地文件(图片、视频、音乐、文档资料)二进制文件、文本文件1.在物理存储上上没有什么区别,存在硬盘上都是以二进制方式存储2.解释数据的逻辑不同,程序读取文本文件,可以以字符方式读取,也可以以字节读取,将读取的数据解释为ASCII或者unicode编码;当程序读取二进制文件,以字节方式读取,对读取数据的解释由读取数据而定,如读取图片时,需要了解文件的结…

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

使用FileInputStream 读取本地文件(图片、视频、音乐、文档资料)
二进制文件、文本文件
1.在物理存储上上没有什么区别,存在硬盘上都是以二进制方式存储
2.解释数据的逻辑不同,程序读取文本文件,可以以字符方式读取,也可以以字节读取,将读取的数据解释为ASCII或者unicode编码;当程序读取二进制文件,以字节方式读取,对读取数据的解释由读取数据而定 ,如读取图片时,需要了解文件的结构,并解释读取的数据,如果不了解图片文件的结构,读取图片文件会失败,图片就会失败。

Java提供的FileInputStream类适合读取二进制文件,而不太适合读取文本文件,若读取文本文件,需要做相应的处理,否则会出现乱码。
 乱码原因是FileInputStream类是每次读取一个字节,而中文字符是2个字节表示。
在Java语言中,中文和英文默认被处理为unicode编码 ,即2个字节表示一个字符
用法:
1.File nl=new File(本地路径)
   FileInputStream isinput=new FileInputStream(nl)
   isinput.read();
2.   FileInputStream isinput=new FileInputStream(本地路径)
FileInputStream一般用来读取二进制文件,如果要读取文本文件,建议使用FileInputStream的read(byte[] b)方法读取整个文本文件,并将读取文件后的byte数组转换为字符串类型。用循环语句读取文件时,必须设定中止循环条件,一般以读取到文件尾部为中止条件。

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

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

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


相关推荐

  • idea怎么查看maven版本_maven项目中plugins爆红

    idea怎么查看maven版本_maven项目中plugins爆红idea查看maven版本idea查看maven版本

    2025年7月8日
    6
  • 百度网站打不开了,只有百度首页跟搜索页打不开其它能正常打开怎么解决?

    百度网站打不开了,只有百度首页跟搜索页打不开其它能正常打开怎么解决?写在开头补充:1.如果出现“您连接的不是私密连接”请点击【高级】或者【详细】;(针对火狐浏览器与谷歌浏览器)2.如果是访问“http://www.baidu.com”不行,请替换“https://www.baidu.com”试试;打不开百度首页问题,只有百度打不开其他能打开怎么办?问题汇总描述1.谷歌Chrome浏览器有时候打不开百度,其它网站表示能够正常访问;2.360浏览器打开…

    2022年5月12日
    41
  • java web注释_webservice命名空间

    java web注释_webservice命名空间此注示用来标明此java类为某个WebService的实现类或者标明此java接口定义了某个WebService的接口。@WebService有六个参数可以用来配置这个WebService的定义:endpointInterface:定义服务抽象WebService协定的服务端点接口的完整名称,如果注解通过endpointInterface属性引用了某个SEI,那么还必须使用@webservice注解来注解该SEI。name:默认的port名为”实现类名+Port”,binding名为”实现类

    2022年10月16日
    4
  • Android ROM 制作教程

    Android ROM 制作教程

    2021年12月7日
    41
  • nginx根据url转发_nginx根据域名转发原理

    nginx根据url转发_nginx根据域名转发原理环境:centos:CentOSLinuxrelease7.6.1810(Core)nginx:1.15.8场景:在/home/centos/www下放有我们的项目,目前只能通过https://xxx.com/xxx访问项目,而我们想通过https://xxx.com/就能访问我们的项目。nginx配置如下:location/xxx{root/home/cen…

    2022年10月19日
    2
  • 回顾外滩踩踏事件,吸取的教训[通俗易懂]

    回顾外滩踩踏事件,吸取的教训[通俗易懂]外滩踩踏事故:悲剧为何发生?外滩踩踏事故:悲剧为何发生?截至当前,上海外滩踩踏事故已造成36人遇难、47人受伤。事故发生的原因初步显现,为外滩观景平台的人流对冲。很多人认为这种归因过于简单,更何况

    2022年7月1日
    193

发表回复

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

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