java 输出流 双字节_java 20 - 5 字节输出流写出数据的一些方法

首先回顾下

字节输出流操作步骤:

A:创建字节输出流对象

B:调用write()方法

C:释放资源

创建字节流输出对象

FileOutputStream fos = new FileOutputStream("fos.txt");

先介绍字节输出流的write方法:

public void write(int b):写一个字节

public void write(byte[] b):写一个字节数组

public void write(byte[] b,int off,int len):写一个字节数组的一部分

1、public void write(int b):写一个字节

fos.write(97); //结果是a

97 -- 底层二进制数据 -- 通过记事本打开 -- 找97对应的字符值 -- a7

此时若想输出97,只能这样:后面会有直接输出97之类的数字的方法

fos.write(57); //

fos.write(55); //

2、public void write(byte[] b):写一个字节数组

byte[] bys={97,98,99,100,101};

//byte[] bys={'a','b','c','d','e'}; //结果一样的

3、public void write(byte[] b,int off,int len):写一个字节数组的一部分

fos.write(bys,1,3); //txt里面的文本是:abcdebcd

字节输出流的write方法介绍完毕,释放资源

fos.close();

字节输出流写出数据实现 换行  和  追加写入

追加写入:每运行一次程序,那么就会在文本里面再次添加程序中要写入的内容

创建字节流输出对象

FileOutputStream fos = new FileOutputStream("fos.txt");

1、如何实现数据的换行?

再写出的数据后面加换号符号就可以了。

注意:不同的系统针对不同的换行符号识别是不一样的:

windows:\r\n

linux:\n

Mac:\r

而一些常见的个高级记事本,是可以识别任意换行符号的。

这样子的话,跨平台会容易出错,所以后面会有方法让程序自动识别系统来改变换号符号。

1、写入数据,实现换行

for (int x = 0; x < 10; x++) {

fos.write(("hello" + x).getBytes());

fos.write("\r\n".getBytes());

}

2、如何实现数据的追加写入?

用构造方法带第二个参数是true的情况即可,也就是说创建字节流对象的时候要进行定义

FileOutputStream fos = new FileOutputStream("fos3.txt", true);

java 20 - 7 字节输入流的操作

字节输入流操作步骤: A:创建字节输入流对象 B:调用read()方法读取数据,并把数据显示在控制台 C:释放资源 步骤A.C 略过,说步骤B  读取数据的方式:  A:int read():一次读取 ...

java中基本输入输出流的解释&lpar;flush方法的使用&rpar;

转自:http://fsz521job.itpub.net/post/5606/34827 网络程序的很大一部分是简单的输入输出,即从一个系统向另一个系统移动字节.字节就是字节,在很大程度上,读服务器 ...

java 20 - 4 IO流概述和一个简单例子解析

IO流的分类:  流向: 输入流 读取数据  输出流 写出数据 数据类型:  字节流  字节输入流 读取数据 InputStream  字节输出流 写出数据 OutputStream  字符流  字符 ...

java 20 - 9 带有缓冲区的字节输出流和字节输入流

由之前字节输入的两个方式,我们可以发现,通过定义数组读取数组的方式比一个个字节读取的方式快得多. 所以,java就专门提供了带有缓冲区的字节类: 缓冲区类(高效类) 写数据:BufferedOutpu ...

java 20 - 6 加入了异常处理的字节输出流的操作

昨天坐了十几个钟的车回家,累弊了.... ————————————割掉疲劳————————————— 前面的字节输出流都是抛出了异常不管,这次的加入了异常处理: 首先还是创建一个字节输出流对象,先给它 ...

java IO流 之 字节输出流 OutputString&lpar;&rpar;

Java学习重点之一:OutputStream 字节输出流的使用 FileOutPutStream:子类,写出数据的通道 步骤: 1.获取目标文件 2.创建通道(如果原来没有目标文件,则会自动创建一个 ...

Java中的字节输入出流和字符输入输出流

Java中的字节输入出流和字符输入输出流 以下哪个流类属于面向字符的输入流( ) A BufferedWriter B FileInputStream C ObjectInputStream D In ...

Java 之 字节输出流&lbrack;OutputStream&rsqb;

一.字节输出流 java.io.OutputStream 抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地. 该类中定义了字节输出流的基本共性功能方法. 公性方法: public v ...

第27章 java I&sol;O输入输出流

java I/O输入输出流 1.编码问题 import java.io.UnsupportedEncodingException; /** * java涉及的编码 */ public class En ...

随机推荐

MySQL 第七天(核心优化一)

一.Mysql核心优化 1. 优化的方面 ① 存储层:数据表"存储引擎"选取.字段选取.逆范式(3范式) ② 设计层:索引.分区/分表 ③ 架构层:分布式部署(主从模式/共享) ④ ...

MySQL数据库InnoDB存储引擎中的锁机制

MySQL数据库InnoDB存储引擎中的锁机制    http://www.uml.org.cn/sjjm/201205302.asp   00 – 基本概念 当并发事务同时访问一个资源的时候,有可能 ...

phpMyAdmin 完整路径泄露漏洞

漏洞名称: phpMyAdmin 完整路径泄露漏洞 CNNVD编号: CNNVD-201307-650 发布时间: 2013-08-09 更新时间: 2013-08-09 危害等级: 中危   漏洞类 ...

普通的101键盘在Mac上的键位对应

为了方便,搞了一个普通的101有线全键盘 + Magic TrackPad配Macbook.        然后发现了一个小问题,按键对应似乎不像我想的那么完美,F1~F12和Macbook不对应,于 ...

迭代导出word 文档

Map迭代的使用: Map map = new HashMap() ; Iterator it = map.entrySet().iterator() ; while (it.hasNext()) { ...

如何从Eclipse导入github上的项目源码

1.首先在github.com上申请一个账号,比如笔者的账号为puma0072.Eclipse需要安装egit插件,在Eclipse中选择help->Marketplace,在search中输入 ...

155Min Stack

题目地址:155Min Stack 最近为了提高数据结构和算法能力,保证每天一到leetcode的题目.从easy开始,感觉这道题目还蛮好,记录一下. 题目大意:就是维护一个栈,获得栈中元素的的最小值 ...

&lbrack;原创&rsqb;HBase学习笔记(3)- Java程序访问HBase

这里介绍使用java api来访问和操作HBase,例如create.delete.select.update等操作. 1.HBase配置 配置HBase使用的zookeeper集群地址和端口. pr ...

android studio编译慢的问题

1.修改android studio的使用堆内存,根据自己电脑的内存,尽量设置的大一点,点击help->如下图: 2.接下来设置使用离线gradle构建,一开始就是使用了内置的默认路径gradl ...

Java使用RabbitMQ之订阅分发(Topic)

使用RabbitMQ进行消息发布和订阅,生产者将消息发送给转发器(exchange),转发器根据路由键匹配已绑定的消息队列并转发消息,主题模式支持路由键的通配. 生产者代码: package org. ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值