大学本科 java教材,大学本科自学java之路——IO

大学本科自学java之路——IO

大学本科自学java之路——IO

我现在大三,大一,大二就是玩,现在大三准备考虑就业了,特写博客便于坚持自己学习

一. 字节缓冲流的构造方法:

BufferedOutputStream:该类实现缓冲输出流。 通过设置这样的输出流,应用程序可以向底层输出流写入字节,而不必为写入的每个字节导致底层系统的调用。

BufferedOutputStream:为另一个输入流添加了功能,即缓冲输入并支持mark和reset方法的功能。 创建BufferedInputStream将创建一个内部缓冲区数组。 当从流中读取或跳过字节时,内部缓冲区将根据需要从所包含的输入流中重新填充,一次很多字节。 mark操作会记住输入流中的一个点,并且reset操作会导致从最近的mark操作读取的所有字节在从包含的输入流中取出新字节之前重新读取。

代码演练:

public class BufferStreamDemo {

public static void main(String[] args) throws IOException {

//字节缓冲输出流:BufferedOutputStream?(OutputStream out)

//使用方法一:先定义fos,再求bos访问绝对路径(访问相对路径出现把绝对路径d:\\xxx.txt 改成相对路径 ,且写的文件名不能为一个文件夹,改为 d:/java/xxx.txt(java是已存在的文件夹)

FileOutputStream fos=new FileOutputStream("E:\\itcast\\whj.txt");

BufferedOutputStream bos=new BufferedOutputStream(fos);

//方法二:直接定义

// BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream("myByteStream\\whj.txt"));

bos.write("hello\r\n".getBytes());

bos.write("world\r\n".getBytes());

//释放资源

bos.close();

}

}

结果·展示:

47eeb5d3522199a5aa59ec1b3b71a5c8.png

BufferedinputStream使用第一种方法:

BufferedInputStream bis=new BufferedInputStream(new FileInputStream("E:\\itcast\\whj.txt"));

// 一次读一个字节数组

int by;

while((by=bis.read())!=-1){

// 错误原因:自动换行

// System.out.println((char)by);

System.out.print((char)by);

}

// 释放资源

bis.close();

输出结果:

274db56d1731c2342748ba07de680b90.png

BufferedinputStream使用第二种方法:

BufferedInputStream bis=new BufferedInputStream(new FileInputStream("E:\\itcast\\whj.txt"));

// 一次读一个字节数组

/* int by;

while((by=bis.read())!=-1){

// 错误原因:自动换行

// System.out.println((char)by);

System.out.print((char)by);

}*/

byte[] bys=new byte[1024];

int len;

while((len=bis.read(bys))!=-1){

System.out.println(new String(bys,0,len));

}

// 释放资源

bis.close();

}

输出结果:

ade0061a114c3c71d55b5e1c2eba3745.png

注意:字节缓冲流只提供缓冲区,而真正的读写数据还得依靠基本的字节流对象进行操作

大学本科自学java之路——IO相关教程

USYD悉尼大学INFO1110 详细作业解析Week4 revision

USYD悉尼大学INFO1110 详细作业解析Week4 revision Week4 Revision 前言 Zig Zag(待更新讲解) Harder Idioms - Extension(待更新) Triangle Palindrome(待更新) Palindrome - Extension(待更新) File Reading(待更新) File Filter(待更新) 反正也

第十七届中国计量大学程序设计竞赛(同步赛)I Isolated Pointse

第十七届中国计量大学程序设计竞赛(同步赛)I Isolated Pointset On a two-dimensional plane, YHH has a series of isolated points named PointSet, which contains N points in it. YHH would like to know if there is a way to draw a vertical bisecto

爬取中国大学排名

爬取中国大学排名 下面展示 代码 爬取上海交通大学软科中国大学排名 import requestsfrom bs4 import BeautifulSoupif __name__ == __main__: destinationPath = html信息.txt allUniv = [] # headers={'User-Agent':'Mozilla/5.0'} url= 'http://www.shangha

青年大学习分类收集截屏小程序

青年大学习分类收集截屏小程序 青年大学习简易打包小程序 收取截屏图片的难受 士可忍,我不能忍 Matlab 一键分类青年大学习截屏 不当组织委员不知道,收集每个人的青年大学习的截屏,并存入每个人的文件夹是多么浪费时间的事。那话说收青大截屏分几个步骤: 同

从工科专业到计算机专业在大学学的编程都给我带来了什么

从工科专业到计算机专业,在大学学的编程,都给我带来了什么? 前言 写这篇文章的主要的原因是什么呢?主要是想到了自己是怎么从一个工科专业然后转行来做到计算机专业,这中间的酸甜苦辣,人间疾苦想分享给大家,以及学习了编程之后我的世界观、价值观的变

Java自学笔记(一)Java语言的特性及、JDK环境搭建、Eclipse环境

Java自学笔记(一)Java语言的特性及、JDK环境搭建、Eclipse环境搭建 计划成为一名JAVA后端开发工程师 !为此努力! 第一阶段的学习是JAVA语言的入门学习,以下是 使用到的资料 : 使用教材:《Java从入门到精通》清华大学出版社 视频网课:1)Java入门基础(

哈尔滨工业大学雨课堂(学堂在线)自动观看mooc

哈尔滨工业大学雨课堂(学堂在线)自动观看mooc GitHub地址:https://github.com/xrervip/AutoYuketangforHIT 代码基于 https://github.com/lingyan12/yuketang 和https://github.com/xrervip/HIT_auto_report/blob/master/HIT_auto_report.py 进行修改 使用

java零基础自学第一天①常用dos命令及环境变量配置常量数据类型

java零基础自学第一天①,常用dos命令及环境变量配置,常量,数据类型,变量,标识符及命名约定,数据类型转化 java自学第一天,dos常用命令及java环境变量配置 一:常用dos命令 win + r, cmd回车 键盘上下按键可切换使用过的命令。 二: 环境变量重启后,无

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/557127.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Map的value转化为其它类型

map的values() Collection<String> v map.values(); 转化为数组或者List集合 转化为List: List<String> lnew ArrayList<String>(map.values()); for(String s:l){System.out.print(s); }转化为数组 1.直接为Object[]数组 Object[] array map.values(…

下载的oracle如何解压,深度概述Ubuntu oracle下载解压

oracle经过长时间的发展&#xff0c;我发表对Ubuntu oracle个人讲解&#xff0c;叙述下Ubuntu oracle使用。Ubuntu 包含了非常好的翻译和容易使用的架构&#xff0c;这些由自由软件社团将不断的提供, 将尽可能的使大多数人方便使用 Ubuntu 。1. 先到 Ubuntu oracle 网站上下载了…

关于比较器Comparator排序时间的问题

​ 最近涉及一个需要按照时间排序的问题&#xff0c;由于在数据库层面order by太麻烦&#xff0c;所以就准备在代码层面解决&#xff0c;但是过程中遇到了一个很有意思的问题。 ​ 先介绍一下用的比较器的api&#xff1a; o1大于o2,则返回正数&#xff1b;o1等于o2,则返回0&…

Error running ‘transmission‘: Unable to open debugger port (127.0.0.1:52469): java.net.SocketExcepti

IDEA运行tomcat启动项目时报错。 开始还以为是这里的端口被占用的问题 然而实际上是tomcat的JMX端口的问题&#xff0c;将端口修改一下&#xff0c;就可以完美启动。 修改之后即可启动项目

oracle 11g 环境,Linux彻底清理Oracle 11g RAC环境方案

参考文档&#xff1a;Linux环境下11.2.0.3 rac的快速卸载脚本在Oracle 11.1和Oracle 10.1,10.2上&#xff0c;都是官方提供手工清理RAC环境的方法的(比如环境有问题&#xff0c;或者RAC安装失败&#xff0c;要清理后重新安装。虽然这些版本&#xff0c;也提供了卸载脚本&#x…

oracle常用用户权限,oracle创建新用户及授予常用权限

创建用户create user usernameidentified by usernamedefault tablespace tablespace_name;授予一般权限grant connect,resource,create any table,drop any table,create sequence,select any table, create any index, drop any index,alter any trigger, create any trigger…

synchronized 锁升级过程

synchronized 锁升级过程就是其优化的核心&#xff1a;偏向锁 -> 轻量级锁 -> 重量级锁 class Test{private static final Object object new Object(); public void test(){synchronized(object) {// do something } }}每个对象创建时都有各自的对象头&#…

oracle数据泵索引创建慢,IMPDP 很慢的原因探究

最近帮一个客户做数据迁移测试&#xff0c;数据库版本的10.2.0.4.0&#xff0c;操作系统是AIX到Linux&#xff0c;采用EXPDP/IMPDP方式进行全库导出和导入。客户的数据库有3.6T&#xff0c;导出时间花了30小时&#xff0c;但是导入却花了120小时&#xff0c;这个很不正常。因为…

Collections.synchronizedList使用

Collections.synchronizedList使用 1.SynchronizedList类具体代码&#xff1a; static class SynchronizedList<E>extends SynchronizedCollection<E>implements List<E> {private static final long serialVersionUID -7754090372962971524L;final List&l…

oracle提交数据按键,Oracle PLSQL - 仅提交数据库链接(Oracle PLSQL - Commit only database link)...

Oracle PLSQL - 仅提交数据库链接(Oracle PLSQL - Commit only database link)有没有办法只通过数据库链接而不是当前会话的数据提交在表上插入/更新的数据&#xff1f; 或者他们被认为是同一个&#xff1f;例如&#xff1a;INSERT INTO main_database.main_table(value1, valu…

oracle ado6,c# ado 连接数据库 六步曲

建立连接分为六步&#xff1a;1.定义连接字符串&#xff0c;oracle 的连接字符串为&#xff1a;private static string connString "Data Source192.168.1.130:1521/mydata;Persist Security InfoTrue;User IDem_test;Passwordtest123;UnicodeTrue";2.根据连接字符串…

java中数组遍历的三种方式

1.for循环遍历 通常遍历数组都是使用for循环来实现。遍历一维数组很简单&#xff0c;遍历二维数组需要使用双层for循环&#xff0c;通过数组的length属性可获得数组的长度。 2.Arrays工具类中toString静态方法遍历 利用Arrays工具类中的toString静态方法可以将一维数组转化为…

127.0.0.1 myz.php,XXE漏洞总结 · MYZ’s Blog

就先以这次校赛的例子作为开头吧ctf首先说一说这次的题&#xff1a;这一次的题是一种回显式的xxe,但是过滤了ENTITY参数.(有点难以判别)贴出源码:1234567891011121314151617181920212223242526272829303132libxml_disable_entity_loader(false);$user1 $_POST[user1];$xmlfile…

mysql中union 查询

mysql中union 查询 UNION ALL只是简单的将两个结果合并后就返回。这样&#xff0c;如果返回的两个结果集中有重复的数据&#xff0c;那么返回的结果集就会包含重复的数据了。 从效率上说&#xff0c;UNION ALL 要比UNION快很多&#xff0c;所以&#xff0c;如果可以确认合并的…

oracle内存表与临时表,Oracle 临时表之临时表空间组(TTG)

环境&#xff1a;sysORCL> select * from v$version;BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProdPL/SQL Release 10.2.0.1.0 - ProductionCORE 10.2.0.1.0 Producti…

修改TOMCAT的JVM虚拟机内存大小几种方式

修改TOMCAT的JVM虚拟机内存大小几种方式 Tomcat默认可以使用的内存为128MB&#xff0c;在较大型的应用项目中&#xff0c;这点内存是不够的&#xff0c;需要调大。 经常会出现Java.lang.OutOfMemoryError: Java heap space 即JVM Heap溢出的错误。 对此有以下几种方法可以选…

oracle数据库read only,oracle 报错Linux-x86_64 Error: 30: Read-only file system

本帖最后由 ccton 于 2014-2-18 12:08 编辑[root**** hydata]# cat /etc/redhat-releaseRed Hat Enterprise Linux Server release 5.6 (Tikanga)[root**** hydata]# uname -aLinux gywsj.hyb210 2.6.18-238.el5 #1 SMP Sun Dec 19 14:22:44 EST 2010 x86_64 x86_64 x86_64 GNU…

sql中in和exist语句的区别?

两者都能实现表功能查询&#xff0c;主要区别如下&#xff1a; 1、适用表的类型不同。 in是子查询为驱动表&#xff0c;外面的表为被驱动表&#xff0c;故适用于子查询结果集小而外面的表结果集大的情况。 exists是外面的表为驱动表&#xff0c;子查询里面的表为被驱动表&am…

织梦task_do.php,织梦20160906更新后栏目空白问题

织梦发布了20160906更新&#xff0c;dedecmsv5.7已经很久没有更新了&#xff0c;看到这个更新后心中突然感动强烈的兴奋&#xff0c;虽然早有准备这只是个小小的更新&#xff01;本次更新内容&#xff1a;dede/makehtml_list_action.php,优化更新列表页速度&#xff0c;建议在后…

linux shell 执行目录,bash shell脚本执行的几种方法

bash shell 脚本执行的方法有多种&#xff0c;本文作一个总结&#xff0c;供大家学习参考。假设我们编写好的shell脚本的文件名为hello.sh&#xff0c;文件位置在/data/shell目录中并已有执行权限。方法一&#xff1a;切换到shell脚本所在的目录(此时&#xff0c;称为工作目录)…