参数带字节数组的

把字节数组转换为字符串


文件里面有ABCDE


再来读取一次


再来读取一次。读取的结果是ED

再来读取,-1到时输出了。但是还是把ED读取出来了。

原理

第一步创建流对象


第二部创建数组

第三步读取数据
jav程序找JVM。JVM找OS,OS调用他的方法来读取数据

第一次读取会读到A。因为字节是两位的 所以还会读取到B

len是读取的有效字节个数

读完A和B,指针就指向C。再来第二次读取

第二次读取的是C和D

C和D就会把A和B覆盖

指针指向E,开始第三次读取。读取到E把C覆盖掉,。再读取后面没有了。所以打印出来的是E和D

读取后,指针会向后移一位到结束标记。

第四次读取,没有数据就会返回-1

方法的参数起到缓冲作用

使用循环优化代码


转换成字符串


字符串的后面有一堆的空格,因为读取的byte长度是1024的长度。就读取到了5个,。后面很多空间就浪费了

转换的时候,使用地个人构造方法来转换。有效的长度就是len

转载于:https://www.cnblogs.com/wangjunwei/p/11268356.html

阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_11_字节输入流一次读取多个字节...相关推荐

  1. java语言基础 : 初识计算机和Java语言-----java初识之路

    初识计算机和Java语言 第一节:计算机的体系结构(常识) 1.计算机的基本概念 计算机(Computer)俗称电脑,是一种用于高级计算,使用非常广泛的设备,主要由 计算机硬件和 计算机软件两个部分组 ...

  2. java基础学习总结一(java语言发展历史、jdk的下载安装以及配置环境变量)

    最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会 直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有"01 ...

  3. 实体类 接口_Java 语言基础编程题 (二维数组, 五子棋游戏, 实体类和接口)

    原文:Java 语言基础编程题 (二维数组, 五子棋游戏, 实体类和接口, 视频讲解) 这里分享三道编程题, 下面是我个人的视频讲解 二维数组, 五子棋游戏, 实体类和接口_哔哩哔哩 (゜-゜)つロ ...

  4. C语言基础1:初识C语言(转义、注释;数组、操作符、反码、补码、static、define、指针、结构体常变量;局部变量;作用域、生命周期)

    文章目录 C语言基础1:初识C语言 1.C语言简介 1.1什么是C语言 1.2C语言的发展 2.第一个C语言程序 2.1创建项目 2.2添加源文件 2.3写代码 3.数据类型 4.变量.常量 4.1定 ...

  5. JAVA语言教学重点_《JAVA语言》教学大纲

    <语言>教学大纲 课程代码: 课程总学分实验学分: 课程总学时数实验学时数: 一.课程目标 课程目的是培养学生对面向对象编程技术的理解和掌握,加强对学生"计算机编程思维" ...

  6. c语言关于continue的题,10道c语言基础题1、C语言的跳转语句中,对于break和continue说法正确的是_______. A、contin...

    10道c语言基础题1.C语言的跳转语句中,对于break和continue说法正确的是_______. A.contin 10道c语言基础题 1.C语言的跳转语句中,对于break和continue说 ...

  7. 菜鸟学习笔记:Java提升篇5(IO流1——IO流的概念、字节流、字符流、缓冲流、转换流)

    菜鸟学习笔记:Java IO流1--IO流的概念.字节流.字符流.缓冲流.转换流 IO流的原理及概念 节点流 字节流 文件读取 文件写出 文件拷贝 文件夹拷贝 字符流 文件读取 文件写出 处理流 缓冲 ...

  8. 【Java开发语言 01】第一章 Java语言概述(基础常识+Java语言概述+Java程序运行机制及运行过程+Java语言环境的搭建+开发体验hello world+错误:编码GBK的不可映射字符)

    java入门-第一章Java语言概述 1基础常识 软件开发 人机交互方式 常用的DOS命令(win系统,有一些直接通过命令执行的) 2 Java语言概述 什么是计算机语言 关于面向对象和面向过程 Ja ...

  9. JAVA教程-JAVA语言基础框架知识学习点-JAVA精通必看

    JAVA教程中文版在线代码示例 1. JAVA语言基础 1. 1. 导言( 17 ) 1. 9. 变量( 6 ) 1. 2. Java关键词( 1 ) 1. 10. 变量范围( 2 ) 1. 3. J ...

  10. Java基础(一)Java语言概述及入门

    1 Java语言概述 1.1Java概述 是SUN(Stanford University Network,斯坦福大学网络公司 ) 1995年推出的一门高级编程语言. 是一种面向Internet的编程 ...

最新文章

  1. 每日一皮:只有第一名才能拿金牌...
  2. SpringBoot中使用@Mapper注解需要哪个包
  3. 干货|针对单个网站的渗透思路(精)
  4. springboot 参数校验详解
  5. linux练习手册,Linux操作习题集(1)
  6. NFC 验证平台搭建
  7. Table of Delphi data types and C++ types
  8. ST众泰:未与长城汽车签署过任何战略协议
  9. 学习iot_腾讯 AI Lab智慧农业组招收多名算法工程实习生 -- IOT/机器学习方向
  10. android otg读取索尼相机usb_索尼新概念!即将上市全画幅无反相机α7C先睹为快
  11. 【狂神css笔记】美化网页元素
  12. SQL--数据--基本操作
  13. 头颅ct有伪影_颅脑CT怎么看?正常和异常影像分别是什么?干货满满!
  14. Java后端开发实习面试
  15. CSS_class标签
  16. [Qualcomm][MSM8909]APQ8009基线上编写一个OpenGl测试程序
  17. 【图论·习题】同余最短路:跳楼机
  18. Java 百度ocr文字识别-发票识别,并在页面显示信息
  19. 变量 内存 分配 ios iphone
  20. 初识EFR32BG22 ---- 能源管理篇

热门文章

  1. 人工智能的发展_人工智能发展带来的机遇
  2. python 拍照搜题_大学慕课2020用Python玩转数据答案搜题公众号
  3. 拓端tecdat|R语言生存分析可视化分析
  4. 拓端tecdat|R语言markov switching model马尔可夫转换分析研究水资源
  5. 拓端tecdat|R语言Gibbs抽样的贝叶斯简单线性回归仿真分析
  6. SpringBoot2.0.0启动流程
  7. Caffe傻瓜系列(6):solver及其配置
  8. ‘SentencePieceProcessor‘ object has no attribute ‘encode‘ 报错解决
  9. python实现不同图像数据的叠加处理、实现多张图像数据以子图形式组合为新的图像数据【图像叠加、图像组合】
  10. Source Code Pro字体在Notepad++和sublime编辑器上的设置