io流代码

java的IO流代码编写 java的IO流代码编写 File 类 文件和目录路径名的抽象表示。 注意:File 类只能操作文件的属性,文件的内容是不能操作的。 1、File 类的字段   我们知道,各个平台之间的路径分隔符是不一样的。   ①、对于UNIX平台,绝对路径名的前缀始终为"/"。 相对路径名没有前缀。 表示根目录的抽象路径名具有前缀"/"和空名称序列。   ②、对于Microsoft Win... 阅读详情

 

目录

 FileInputStrea字节输入流

 FileOutputStream字节输出流

FileReader字符输入流 

 FileWriter字符输出流

 拷贝:使用FileInputStream + FileOutputStream完成文件的拷贝。

 使用FileReader FileWriter进行拷贝的话,只能拷贝“普通文本”文件。


 FileInputStrea字节输入流

package com.bjpowernode.java.io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

/*
最终版,需要掌握。
 */
public class FileInputStreamTest04 {
    public static void main(String[] args) {
        FileInputStream fis = null;
        try {
            fis = new FileInputStream("chapter23/src/tempfile3");
            // 准备一个byte数组
            byte[] bytes = new byte[4];
            /*while(true){
                int readCount = fis.read(bytes);
                if(readCount == -1){
                    break;
                }
                // 把byte数组转换成字符串,读到多少个转换多少个。
                System.out.print(new String(bytes, 0, readCount));
            }*/

            int readCount = 0;
            while((readCount = fis.read(bytes)) != -1) {
                System.out.print(new String(bytes, 0, readCount));
            }

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fis != null) {
                try {
                    fis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

 FileOutputStream字节输出流

package com.bjpowernode.java.io;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * 文件字节输出流,负责写。
 * 从内存到硬盘。
 */
public class FileOutputStreamTest01 {
    public static void main(String[] args) {
        FileOutputStream fos = null;
        try {
            // myfile文件不存在的时候会自动新建!
            // 这种方式谨慎使用,这种方式会先将原文件清空,然后重新写入。
            //fos = new FileOutputStream("myfile");
            //fos = new FileOutputStream("chapter23/src/tempfile3");

            // 以追加的方式在文件末尾写入。不会清空原文件内容。
            fos = new FileOutputStream("chapter23/src/tempfile3", true);
            // 开始写。
            byte[] bytes = {97, 98, 99, 100};
            // 将byte数组全部写出!
            fos.write(bytes); // abcd
            // 将byte数组的一部分写出!
            fos.write(bytes, 0, 2); // 再写出ab

            // 字符串
            String s = "我是一个中国人,我骄傲!!!";
            // 将字符串转换成byte数组。
            byte[] bs = s.getBytes();
            // 写
            fos.write(bs);

            // 写完之后,最后一定要刷新
            fos.flush();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fos != null) {
                try {
                    fos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

FileReader字符输入流 

package com.bjpowernode.java.io;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

/*
FileReader:
    文件字符输入流,只能读取普通文本。
    读取文本内容时,比较方便,快捷。
 */
public class FileReaderTest {
    public static void main(String[] args) {
        FileReader reader = null;
        try {
            // 创建文件字符输入流
            reader = new FileReader("tempfile");

            //准备一个char数组
            char[] chars = new char[4];
            // 往char数组中读
            reader.read(chars); // 按照字符的方式读取:第一次e,第二次f,第三次 风....
            for(char c : chars) {
                System.out.println(c);
            }

            /*// 开始读
            char[] chars = new char[4]; // 一次读取4个字符
            int readCount = 0;
            while((readCount = reader.read(chars)) != -1) {
                System.out.print(new String(chars,0,readCount));
            }*/
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

 FileWriter字符输出流

package com.bjpowernode.java.io;

import java.io.FileWriter;
import java.io.IOException;

/*
FileWriter:
    文件字符输出流。写。
    只能输出普通文本。
 */
public class FileWriterTest {
    public static void main(String[] args) {
        FileWriter out = null;
        try {
            // 创建文件字符输出流对象
            //out = new FileWriter("file");
            out = new FileWriter("file", true);

            // 开始写。
            char[] chars = {'我','是','中','国','人'};
            out.write(chars);
            out.write(chars, 2, 3);

            out.write("我是一名java软件工程师!");
            // 写出一个换行符。
            out.write("\n");
            out.write("hello world!");

            // 刷新
            out.flush();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (out != null) {
                try {
                    out.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

 拷贝:使用FileInputStream + FileOutputStream完成文件的拷贝。

package com.bjpowernode.java.io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/*
使用FileInputStream + FileOutputStream完成文件的拷贝。
拷贝的过程应该是一边读,一边写。
使用以上的字节流拷贝文件的时候,文件类型随意,万能的。什么样的文件都能拷贝。
 */
public class Copy01 {
    public static void main(String[] args) {
        FileInputStream fis = null;
        FileOutputStream fos = null;
        try {
            // 创建一个输入流对象
            fis = new FileInputStream("D:\\course\\02-JavaSE\\video\\chapter01\\动力节点-JavaSE-杜聚宾-001-文件扩展名的显示.avi");
            // 创建一个输出流对象
            fos = new FileOutputStream("C:\\动力节点-JavaSE-杜聚宾-001-文件扩展名的显示.avi");

            // 最核心的:一边读,一边写
            byte[] bytes = new byte[1024 * 1024]; // 1MB(一次最多拷贝1MB。)
            int readCount = 0;
            while((readCount = fis.read(bytes)) != -1) {
                fos.write(bytes, 0, readCount);
            }

            // 刷新,输出流最后要刷新
            fos.flush();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            // 分开try,不要一起try。
            // 一起try的时候,其中一个出现异常,可能会影响到另一个流的关闭。
            if (fos != null) {
                try {
                    fos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (fis != null) {
                try {
                    fis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

 使用FileReader FileWriter进行拷贝的话,只能拷贝“普通文本”文件。

package com.bjpowernode.java.io;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/*
使用FileReader FileWriter进行拷贝的话,只能拷贝“普通文本”文件。
 */
public class Copy02 {
    public static void main(String[] args) {
        FileReader in = null;
        FileWriter out = null;
        try {
            // 读
            in = new FileReader("chapter23/src/com/bjpowernode/java/io/Copy02.java");
            // 写
            out = new FileWriter("Copy02.java");

            // 一边读一边写:
            char[] chars = new char[1024 * 512]; // 1MB
            int readCount = 0;
            while((readCount = in.read(chars)) != -1){
                out.write(chars, 0, readCount);
            }

            // 刷新
            out.flush();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (in != null) {
                try {
                    in.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (out != null) {
                try {
                    out.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }
}

Java IO流详解及示例代码 它提供了一种用于读取和写入数据的机制,能够处理从文件、网络、键盘等源输入的数据,并将数据输出到文件、网络、屏幕等目标上。本文将详细介绍Java IO流的不同类型以及它们的用法,并提供相应的示例代码。BufferedInputStream和BufferedOutputStream是字节流的缓冲类,它们提供了缓冲区来提高读写效率。本文介绍了Java IO流的不同类型以及它们的使用方法,并提供了相应的示例代码。通过理解和掌握Java IO流的概念和用法,您将能够有效地处理各种输入和输出操作。 阅读详情

相关推荐

IO流经典代码,让你不再为IO而犯难,烦恼

你可以学习以下代码获得很好的体验效果,如果你看过JAVA2实用教程的话可以更好的理解

JavaSE 一些技巧 04——IO流各种流常用代码整理

IO流,缓冲流,打印流

m0_46507516的博客 512

io 流全部代码详解

写在前面:本文章基本覆盖了java IO的全部内容,java新IO没有涉及,因为我想和这个分开,以突出那个的重要性,新IO哪一篇文章还没有开始写,估计很快就能和大家见面。照旧,文章依旧以例子为主,因为讲解内容的java书很多了,我觉的学以致用才是真。代码是写出来的,不是看出来的。

Java的IO流示例代码(输入流输出流字节流字符流文件流缓冲流)

缓冲流(包装流、处理流):BufferedWriter,BufferedReader,BufferedOutputStream,BufferedInputStream。文件流:FileOutputStream,FileInputStream,FileWriter,FileReader。以Stream结尾的都是字节流(byte[]),以Reader/Writer结尾的都是字符流。缓冲流只需要close最外层,读取时不需要定义char或byte数组,自带缓冲。本篇代码没有涉及到的其他流如下,感兴趣的自行了解。

乾坤未定,你我皆是黑马 693

io流详解代码

这是第二部分的io流详解内容。包含图片和代码,还有视频。不方便传!

io流详解,字符流和字节流代码

这是一个关于io流的文件,里面包括代码和图片截图。详细的说明了io流的内在

Java之IO流

Java之IO流的相关知识

weixin_52068218的博客 680

基于 Go 的微信滑块验证码自动化:协议还原与图像算法深度解析

本文从协议层、算法层和工程优化三个维度,系统拆解了基于Go的微信滑块验证码自动化方案。在协议层,通过手写protobuf编码器和RSA加密复现了微信UUID生成机制;在算法层,采用图像匹配技术实现滑块缺口定位;在工程层面,构建了包含HTTP状态机和随机化设备指纹的完整验证流程。文章重点阐述了技术实现的形式化建模、算法选择依据和复杂度分析,为工程师和算法研究者提供了可验证的技术方案。核心代码结构包括UUID生成、滑块状态机和图像匹配算法等模块,通过分层设计实现了高效可靠的验证码自动化破解。

weixin_65409651的博客 1293

IO流 (读写数据)

【代码】IO流 (读写数据)

m0_64703222的博客 203

IIS - 会话cookie中缺少HttpOnly属性

不啰嗦,我们直接开始! 先进行常规设置 打开配置编辑器 选中图中节点,将httpOnlyCookies设置为true 然后。。。不起作用。。。 换种方式 通过配置出站规则getcookie添加HttpOnly 在Web.config中添加如下出站规则 <rewrite> <outboundRules> <rule name="Add HttpOnly"> <match serverVa.

。 21万+

西门子RS485自由口通信Modbus RTU 通信协议

部分西门子的RS485模块不能使用西门子自带的Modbus RTU通信指令,需要通过自己拼接、发送、接收和解析报文完成Modbus RTU通信。通过多次尝试完成该功能: #R_TRIG_Instance(CLK := #触发, Q => #触发上升沿); IF #触发上升沿 THEN // 触发后先将读取完成复位 #读写完成 := 0; END_IF; CASE #功能码 OF 1: // 线圈状态读取 ; 2:

qq_20792765的博客 1万+

java中IO流的面试题,以及编写代码

java中IO流的面试题,以及编写代码 思路就是将文件通过IO流进行读取出来,然后进行遍历即可; 首先是介绍文件: 重点把文件下的目录显示出来就可以了 File表示了文件与文件夹两个种类; //实例化对象 File file = new File(文件/文件夹); //创建文件 createNewFile(); //创建单极文件夹 mkdir(); //创建多级文...

qq_36072434的博客 791

cadence17.4和16.6同时安装无法使用的问题

经过对报错的问题分析,发现还是17.4的lic文件和16.6的不一样,16.6的版本总是无法找到自己对应的lic文件。卸载了,重新单独安装16.6,这里就是正确的。包括使用这些工具去修复这些问题,都无法接近。已经放弃了,使用哪个版本就安装 哪个版本。这个也无法解决问题。

D_Katter的博客 2324

io流 java代码_javaIO流

Java中IO流一、流原理I/O:Input/Output,I/O技术用于处理设备之间数据传输。如:读/写文件,网络通讯等。在Java程序中,对于数据的输入/输出,以”流“的方式进行。java.io包下提供了各种”流“类和接口,用以获取不同种类的数据,并通过标准的方法【read()、write()】输入或输出数据。输入输出是相对的外部数据(磁盘、光盘等存储设备的数据) 程序(内存)我们编写程序时...

weixin_42110070的博客 247

28、数字电路测试与半导体内存测试全解析

本文全面解析了数字电路中的顺序电路测试生成方法与半导体内存测试技术。内容涵盖顺序电路中的故障检测、多重观察测试、可驱动性分析、伪组合电路测试及初始化问题,并深入探讨了内存技术发展、故障模型、测试流程与未来趋势。重点介绍了DRAM、SRAM等主流内存类型的特点,以及制造和使用过程中面临的永久性与非永久性故障挑战,提出了基于故障模型的高效测试策略与优化方案。

go5gopher的博客 122

Unity Shader之路(一)什么是Unity Shader?

Unity Shader前言什么是UnityShaderUnity Shader和材质的关系 前言 众所周知,要想当游戏开发工程师,Unity中的Shader编写不得不摸,这一系列文章我将描写我的Shader学习之路,致敬冯乐乐的书Unity Shader入门精要,此篇什么是Unity Shader?希望能给后人一点方向 我们刚开始接触Unity的时候,总是会遇到材质,但是不了解材质都是什么,为什么可以在很多材质中选择,为什么有时候选择了其他材质后就不能达到我们想要的结果,为什么资源商店有那么多的材质,山.

TurboQ珞珈 2239

java io流底层代码_java的IO流

java的IO操作IO指的是Input,Output,即输入与输出流划分为两类:节点流和处理流。节点流:又称为低级流,是真实连接程序与数据源的“管道”,负责实际搬运数据。读写一定是建立在节点流的基础上进行的。处理流:又称为高级流,高级流不能独立存在,一定是连接在其他流上使用的,目的是通过其连接的流将数据流经此流时对数据进行加工处理,从而简化我们实际对读写的数据加工的操作。在低级流的基础上通过组合多...

weixin_42548874的博客 432

新手强化学习—深入解析 YOLOv13 项目包中的文件结构和各文件作用

YOLOv13是YOLO系列最新发布的计算机视觉模型。在这篇博客中,我将深入分析YOLOv13中各个文件的作用,对整个项目的文件结构有更清晰的认识。

Limiiiing的博客 482

Java聊天室 IO流 Socket流 GUI界面 所有的代码

Java聊天室 IO流 Socket流 GUI界面 所有的代码 文章目录Java聊天室 IO流 Socket流 GUI界面 所有的代码客户端服务端 客户端 package SanWa.Net; public enum MsgTypeConfig { PRIVATE_MSG, ONLINE_LIST1, SHANGXIAN, WENJIAN, FANKUI, PUBLIC_MSG, ONLINE_MSG, ONLINE_LIST, EXIT_MSG; } pa

cx9977的博客 1187

告别 Python!C# 直接跑 YOLO 目标检测:工控机边缘推理终极方案

set;set;set;set;set;stringget;set;get;set;get;set;get;set;get;set;告别 Python 依赖,不是排斥 Python 的训练能力,而是为了工程化的极致。在工控机这个资源受限、稳定性要求极高的战场上,是目前最优雅、最高效的解决方案。更少的依赖= 更少的故障点。更快的速度= 更高的产线节拍。更简单的部署= 更低的人力成本。现在,拿起你的 C# 项目,导入那个.onnx。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 422

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

io流 java代码_java IO流核心代码

FileInputStream f = new FileInputStream("xxx.txt"); //用已存在的文件,创建输入流,用于读出来FileOutputStream fileOutputStream = new FileOutputStream("hahaha.txt");//创建输出流,用于写入//读int a;while ((a = f.read())!=-1) {//写file...

weixin_35023786的博客 227

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

io流java_Java中io流解析及代码实例

IO流Java中IO流分为两种,字节流和字符流,顾名思义字节流就是按照字节来读取和写入的,字符刘是按照字符来存取的;常用的文件读取用的就是字符流,在网络通信里面用的就是字节流下面这张图是Java中IO流的总体框架:字节流Java中字节流一般都是以stream结尾的,输入的字节流叫InputStream,输出字节流叫OutputStream;InputStream和OutputStream是表示自己...

weixin_35755188的博客 187

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Java IO 流:简介与代码示例

Java IO 流可以根据输入/输出设备的类型和特性,将数据的输入和输出操作简化。它提供了一种抽象的方式,让我们可以使用统一的方式处理不同的输入输出情况。Java 的 IO 流提供了处理各种数据输入和输出的强大工具。无论是处理文件,还是处理网络通信,Java IO 流都能提供简单且高效的方式。在理解和使用这些工具时,要记住及时关闭打开的资源,以防止资源泄露。

隐风的博客 228

深度理解IO流,IO流的代码练习

Java IO流 要想理解IO流 肯定得先了解流是什么? 流(Stream)是指一连串的数据(字符或字节),是以先进先出的方式发送信息的通道,数据源发送的数据经过这个通道到达目的地,按流向区分为输入流和输出流。 流是单向,不可重复,只能遍历一遍,遍历过一次后用尽,就像流水。 1.在java中,根据处理的数据单位不同,可以把流分为字节流和字符流 ​ 字节流 : 针对二进制文件 ​ 字符流 : 针对文本文件,读写容易出现乱码的现象,在读写时,最好指定编码集为UTF-8 在结合对应类型的输入和

weixin_56309075的博客 210

io流 知识点+代码实例

注意 : 输出流写出数据时,如果源文件存在并且有内容,会默认覆盖,如果想要实现追加,使用重载构造器,boolean append->true追加,false覆盖(默认)功能流(包装流|处理流) : 加强节点流的功能,提高节点流的性能。OutputStream : 此抽象类是表示输出字节流的所有类的超类。功能分 : 节点流 操作单元分 : 字节流 流向分 : 输入流。OutputStream : 此抽象类是表示输出字节流的所有类的超类。FileOutputStream : 文件字节输出流。

m0_51170293的博客 329

java 常用IO流的分类以及代码实现

IO流是一种数据流,把数据读入内存以及写出内存的过程中就需要通过流的方式来进行。 IO流的分类 根据IO流的方向:输入流和输出流 根据IO流的单位:字节流和字符流 根据IO流的角色:节点流和缓冲流 常用IO流: 节点流 缓冲流 字节流 FileInputStream、FileOutputStream BufferedInputStream、BufferedOutputStream 字符流 FileReader、FileWriter BufferedReader、BufferedWr

一起码代码 562
上一篇: 集合代码练习
下一篇: 多线程知识代码总结
continueLR
博客等级 码龄6年 9粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值