//输出和输入流

package com.kangkang.IO;

import com.sun.xml.internal.ws.util.xml.CDATA;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

public class demo01 {

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

//数据的写入

byte[] data = {15,5,63,46};

File file = new File("example.123");

FileOutputStream outputStream = new FileOutputStream(file);

    outputStream.write(data,0,4);
outputStream.close();
System.out.println("Exit..");
}

}

package com.kangkang.IO;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

public class demo02 {

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

//数据的读取

    //用于接收数据的缓冲区,需要足够大
byte[] buffer = new byte[50];
// 可以使用绝对路径,如c:/加文件的目录
// 也可以使用相对路径,把文件放在项目目录下
File file = new File("kangkang.txt");
// 从文件读取数据,存放进缓存区
FileInputStream inputStream = new FileInputStream(file);
int n = inputStream.read(buffer,0,50);
inputStream.close();
System.out.println("获取了"+n+"字节");
System.out.println("Exit");
String str = new String(buffer,0,n,"UTF-8");
System.out.println(str);
}

}

package com.kangkang.IO;

import java.io.File;

import java.io.FileOutputStream;

public class demo03 {

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

//文件的写入

    //字符串
String str = "康康你好帅";
//因为文件里面全部都是字节形式,所以要把字符串转换为字节才能写入文件中
byte[] data = str.getBytes("UTF-8");
File file = new File("kang.999");
FileOutputStream outputStream = new FileOutputStream(file);
outputStream.write(data); outputStream.close();
System.out.println("Exit");
}

}

package com.kangkang.IO;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

public class demo04 {

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

// 读取文件的内容

    byte[] buffer = new byte[100];
File file = new File("kangkang.txt");
FileInputStream inputStream = new FileInputStream(file);
int n =inputStream.read(buffer,0,100);
System.out.println("读取了"+n+"字节");
inputStream.close();
// 写入用什么格式,解码的时候也要用什么格式
String str = new String(buffer,0,n,"UTF-8");
System.out.println(str);
System.out.println("Exit");
}

}

Java文件字节流的更多相关文章

  1. Java文件字节流和字符流

    输入流:只能从中读取数据,不能向其写入数据. InputStream,Reader 输出流:只能向其中写入数据,不能从中读取数据. OutputStream, Writer 输入流是相对于程序而言,外 ...

  2. Java 的字节流文件读取(一)

    上篇文章我们介绍了抽象化磁盘文件的 File 类型,它仅仅用于抽象化描述一个磁盘文件或目录,却不具备访问和修改一个文件内容的能力. Java 的 IO 流就是用于读写文件内容的一种设计,它能完成将磁盘 ...

  3. java字节流和字符流,以及java文件操作

    A.首先说字节流:1.字节流在操作的时候不会用到缓冲区(也就是内存)2.字节流可用于任何类型的对象,包括二进制对象3.字节流处理单元为1个字节,操作字节和字节数组.InputStream是所有字节输入 ...

  4. Java中字节流和字符流的比较(转)

    字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢? 实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操 ...

  5. java中字节流和字符流的区别

    流分类: 1.Java的字节流   InputStream是所有字节输入流的祖先,而OutputStream是所有字节输出流的祖先.2.Java的字符流  Reader是所有读取字符串输入流的祖先,而 ...

  6. Java - 文件(IO流)

    Java - 文件 (IO)   流的分类:     > 文件流:FileInputStream | FileOutputStream | FileReader | FileWriter     ...

  7. 面试题之——将文件夹下java文件写入到新的文件夹,并修改扩展名

    题目:将d:/code/java文件夹下的所有.java文件复制到d:/code/java/jad文件夹下并且将原来的文件的扩展名.java改为.jad 源代码: package com.zyh.in ...

  8. java文件的读写操作

    java文件的读写操作主要是对输入流和输出流的操作,由于流的分类很多,所以概念很容易模糊,基于此,对于流的读写操作做一个小结. 1.根据数据的流向来分: 输出流:是用来写数据的,是由程序(内存)--- ...

  9. JAVA 文件编译执行与虚拟机(JVM)简单介绍

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytpo3 java程序的内存分配 JAVA 文件编译执行与虚拟机(JVM)介绍 ...

随机推荐

  1. ACM-ICPC 2017 Asia Xi'an

    ACM-ICPC 2017 Asia Xi'an Solved A B C D E F G H I J K 7/11 O O Ø O O ? O O O for passing during the ...

  2. PAT(乙级)2020年秋季考试

    比赛链接:https://pintia.cn/market/item/1302816969611366400 7-1 多二了一点 (15分) 题解 模拟. 代码 #include <bits/s ...

  3. Testing Beta Round (Unrated)

    比赛链接:https://codeforces.com/contest/1390 A. 123-sequence 题意 给出一个只含有 $1,2,3$ 的数组,问使所有元素相同至少要替换多少元素. 题 ...

  4. Codeforces Round #547 (Div. 3) C. Polycarp Restores Permutation (数学)

    题意:有一长度为\(n\)的序列\(p\),现在给你\(q_i=p_{i+1}-q_i \ (1\le i\le n)\),问你是否能还原出原序列,如果能救输出原序列,否则输出\(-1\). 题解:由 ...

  5. SPF POJ - 1523 割点+并查集

    题意: 问你这个图中哪个点是割点,如果把这个点去掉会有几个子网 代码: 1 //给你几个点,用着几个点形成了一个图.输入边形成的图,问你这个图中有多少个割点.每一个割点去掉后会形成几个强连通分量 2 ...

  6. Codeforces Round #672 (Div. 2 B. Rock and Lever (位运算)

    题意:给你一组数,求有多少对\((i,j)\),使得\(a_{i}\)&\(a_{j}\ge a_{i}\ xor\ a_{j}\). 题解:对于任意两个数的二进制来说,他们的最高位要么相同要 ...

  7. 【.NET 与树莓派】PWM 调节LED小灯的亮度

    在开始本文内容之前,老周先纠正一个错误.在上一篇中,提到过 Arduino 开发板的 Vin 引脚,文中老周说这个供电口的输入电压不能高于 5.5V.这里有错,被卖家给的使用说明忽悠了,上 Ardui ...

  8. 网络之一次http请求的完整过程

    关于网络的知识平时可能真正用的比较少,但是有一些点还是需要总结的: 完成一次http请求要大致可以分为7个步骤: 一.TCP三次握手 第一次握手:建立连接.客户端发送连接请求报文段,将SYN位置为1, ...

  9. In_array()函数弱比较

    0x01 定义 (PHP 4, PHP 5, PHP 7) in_array - 检查数组中是否存在某个值 说明 in_array ( mixed $needle , array $haystack ...

  10. 推荐一个vuepress模板,一键快速搭建文档站

    介绍 vuepress-template是一个简单的VuePress案例模板,目的是让用户可以直接clone这个仓库,作为初始化一个VuePress网站启动项目,然后在这个项目的基础上新增自定义配置和 ...