当前位置: 首页 > wzjs >正文

移动广告平台天津seo推广服务

移动广告平台,天津seo推广服务,广西哪家公司做网站的,学做前端的网站IO流分类 AA、根据数据流动的方向:输入流和输出流 如:打开一个新的记事本并输入一些内容,而这些内容是在内存里面的,没有存储到磁盘中,当点击保存之后,数据才会从内存流向磁盘;当双击打开磁盘文件的时候,数据才会从磁盘流向内存【数据存储有一个特点:内存一旦断电数…

IO流分类

AA、根据数据流动的方向:输入流和输出流

如:打开一个新的记事本并输入一些内容,而这些内容是在内存里面的,没有存储到磁盘中,当点击保存之后,数据才会从内存流向磁盘;当双击打开磁盘文件的时候,数据才会从磁盘流向内存【数据存储有一个特点:内存一旦断电数据消失,磁盘永久保存】如何选择使用输入流或者输出流?【程序角度来说:Ctrl+s当内存流向磁盘[输出流],双击打开磁盘文件磁盘流向内存[输入流]

什么是IO?

I(InputStream)O(OutputStream)指的就是输入流和输出流

生活中遇到常见的流:物流、人流、车流、水流、电流……【共同点:强调一个东西,从一个地方到另一个地方】

BB、根据数据流动的类型:字节流和字符流

数据流动的单位是字节就叫做字节流

数据流动的单位是字符就叫做字符流

IO的四大抽象流(都是抽象类):

InputStream:所有字节输入流的基类,其中API里面无提供专门获取对象的方法,可以自己写一个子类继承它,或者直接找它已有的子类,new一个它的子类就能用InputStream里面的方法

这里操作的是文件,就选一个相近一点的使用InputStream下面的子类——FileInputStream

FileInputStream 从文件系统中的某个文件中获得输入字节。哪些文件可用取决于主机环境
FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用 FileReader

字段摘要【无】

构造方法摘要

FileInputStream(File file)

	通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的 File 对象 file 指定根据指定的文件**对象**创建字节输入流对象

FileInputStream(String name)

	通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定根据指定的文件**路径名**创建字节输入流对象
public class InputStremFileInputStremDemo {public static void main(String[] args) throws FileNotFoundException {//该构造需要抛异常,可进入FileInputStream构造里面看//创建字节输入流对象FileInputStream fileInputStream = new FileInputStream("xxxxxx.txt");//不存在的文件System.out.println(fileInputStream);//文件不存在,报错//Exception in thread "main" java.io.FileNotFoundException: xxxxxx.txt (系统找不到指定的文件。)}
}

方法摘要

int read()

	从此输入流中读取一个**数据字节**,下一个数据字节无则返回 -1一次性只能读取到一个字节,返回的是ASCII值,如果读到末尾返回 -1

在这里插入图片描述
先创建a.txt文件并写入内容保存,再使用字节输入流读取出来

从文件读取出来是对应的数字public class InputStremFileInputStremDemo {public static void main(String[] args) throws IOException {//创建字节输入流对象FileInputStream fileInputStream = new FileInputStream("D:/hh/a.txt");//读取第一个字节int readK = fileInputStream.read();//read方法需要抛异常System.out.println(readK);//读取第二个字节int readS = fileInputStream.read();System.out.println(readS);//读取第三个字节int readD = fileInputStream.read();System.out.println(readD);//读取第四个字节int readJ = fileInputStream.read();System.out.println(readJ);//读取第五个字节int read = fileInputStream.read();System.out.println(read);/*** 107* 115* 100* 106* -1*///关闭IO流fileInputStream.close();}
}从文件读取出来是对应的内容public class InputStremFileInputStremDemo {public static void main(String[] args) throws IOException {//创建字节输入流对象FileInputStream fileInputStream = new FileInputStream("D:/hh/a.txt");//读取第一个字节int read = fileInputStream.read();//read方法需要抛异常System.out.println((char) read);//读取第二个字节read = fileInputStream.read();System.out.println((char)read);//读取第三个字节read = fileInputStream.read();System.out.println((char)read);//读取第四个字节read = fileInputStream.read();System.out.println((char)read);//读取第五个字节read = fileInputStream.read();System.out.println(read);//无对应内容/*** k* s* d* j* -1*///关闭IO流fileInputStream.close();}
}

循环读取字节——模式1【这里的缺陷:一次性只能装一个数据,因为read()方法只能一次性读取一个字节】

public class InputStremFileInputStremDemo {public static void main(String[] args) throws IOException {//创建字节输入流对象FileInputStream fileInputStream = new FileInputStream("D:/hh/a.txt");//一次性读取一个字节int read ; //这里不是没有初始化,没报错的原因,因为其实下面使用已经赋值了,局部变量必须会赋值,不然会提示Variable 'read' might not have been initialized//定义一个可变字符串,来拼接字符StringBuilder stringBuilder = new StringBuilder();//循环读取字节,把读取出来的字符赋值给read,然后以read去判断是否等于-1//这里不确定循环的次数所以不能用for循环,所以不知道循环次数都用whilewhile ((read = fileInputStream.read()) != -1){stringBuilder.append((char) read);//System.out.println((char)read);/*** k* s* d* j*/}System.out.println(stringBuilder);//ksdj//关闭IO流fileInputStream.close();}
}

常识:一个英文字母占一个字节

int read(byte[] b)

	从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中一次性能读取多个字节,返回读取字节的个数,如果读到末尾返回 -1

循环读取字节——模式2【这里的缺陷:一次性能装多个数据,因为read(byte[] b)方法能一次性读取多个字节】

public class InputStremFileInputStremDemo {public static void main(String[] args) throws IOException {//创建字节输入流对象FileInputStream fileInputStream = new FileInputStream("D:/hh/a.txt");//一次性读取多个字节byte[] bytes = new byte[4];//如果这里为7,实际只有四个字节,会显示null//把读取出来的字节放到bytes数组里面fileInputStream.read(bytes);System.out.println(Arrays.toString(bytes));//[107, 115, 100, 106]/*** String(byte[] bytes)* 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String*/System.out.println(new String(bytes));//ksdj//关闭IO流fileInputStream.close();}
}有中文可以输出中文public class InputStremFileInputStremDemo {public static void main(String[] args) throws IOException {//创建字节输入流对象FileInputStream fileInputStream = 
http://www.dtcms.com/wzjs/493389.html

相关文章:

  • 建网站源码建站详解百度域名注册官网
  • 工行网站如何做理财风险评估网站统计数据分析
  • 什么做网站优化大师app下载安装
  • wordpress被恶意注册重庆seo网站推广费用
  • 企业邮箱 网站建设郑州百度推广哪家好
  • 怎么做网站客服软件产品品牌推广策划方案
  • 音乐盒的网站怎么做品牌营销方案
  • 简单的wordpress模板福建搜索引擎优化
  • 东软网站建设方案百度怎么发帖子
  • 阿里云搭建网站石家庄整站优化技术
  • 个人建设网站需要什么证件吗关键词推广软件
  • 网站备案 办理网络营销成功案例有哪些2022
  • 美食门户网站源码国内做网站比较好的公司
  • 网站保护等级是企业必须做的么618网络营销策划方案
  • 今天的最新疫情seo排名点击软件推荐
  • 家纺 网站建设 中企动力手机版百度一下
  • 哪些网站是ruby做的seo优化培训课程
  • 自己注册了个域名想做一个网站吗武汉千锋教育培训机构怎么样
  • 租用网站的服务器seo l
  • 开发青年网站潍坊网站seo
  • 目前国内做情趣最好的网站关键词在线采集
  • 网站数据库做好了 怎么做网页百度咨询电话人工台
  • cdr 做网站营销团队外包
  • 怎么用软件做原创视频网站专业关键词排名软件
  • 广州网站开发公司排名谷歌浏览器下载安装2022最新版
  • 中国工程建设企业协会网站湖州网站建设制作
  • 合浦县城乡规划建设局网站网站关键词优化排名公司
  • 推广网站怎么做网上营销
  • 沈阳网站制作公司哪家好网络口碑营销案例分析
  • 北京免费网站建设论坛排名