java io读取数据

news2024/11/27 0:50:35

1.字节流读取数据 

2.字节流读取数据: read()

package wwx;

import jdk.swing.interop.SwingInterOpUtils;

import java.io.*;
import java.nio.charset.StandardCharsets;

public class Test {
    public static void main(String[] args) {
        FileInputStream fileInputStream = null;


        try {
            fileInputStream = new FileInputStream("E:\\wwx\\xx\\wx.txt");

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {

            int read = fileInputStream.read();
            System.out.println((char)read);
            int read1 = fileInputStream.read();
            System.out.println((char)read1);
            int read2 = fileInputStream.read();
            System.out.println((char)read2);

        } catch (IOException e) {
            e.printStackTrace();
        }
        finally {
            try {
                fileInputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }




    }

}


 

 优化:

package wwx;

import jdk.swing.interop.SwingInterOpUtils;

import java.io.*;
import java.nio.charset.StandardCharsets;

public class Test {
    public static void main(String[] args) {
        FileInputStream fileInputStream = null;


        try {
            fileInputStream = new FileInputStream("E:\\wwx\\xx\\wx.txt");

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {

            int read ;

//            System.out.println((char)read);
//            int read1 = fileInputStream.read();
//            System.out.println((char)read1);
//            int read2 = fileInputStream.read();
//            System.out.println((char)read2);

//            while (read != -1) {
//                System.out.println((char) read);
//                read = fileInputStream.read();
//            }
            //优化
            while ((read = fileInputStream.read()) != -1) {
                System.out.print((char) read);

            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                fileInputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }


    }

}


3.字节流复制文件:

package wwx;

import jdk.swing.interop.SwingInterOpUtils;

import java.io.*;
import java.nio.charset.StandardCharsets;

public class Test {

    public static void main(String[] args) throws IOException {
        FileInputStream fileInputStream = new FileInputStream("E:\\Test\\wwx.txt");

        FileOutputStream fileOutputStream = new FileOutputStream("E:\\cTest\\wwx.txt");
       
        int by;
        while ((by = fileInputStream.read()) != -1) {
            fileOutputStream.write(by);
        }
        fileInputStream.close();
        fileOutputStream.close();
    }


}


 4.byte数组转为字符串:new String(byte)方法

package wwx;
public class Test {
    public static void main(String[] args) {

        byte[] bytesArray={97,98,99};

        String s = new String(bytesArray);//用构造方法创建的,值为正常值

        System.out.println("byte数组转为字符串形式:"+s);


       String str1="3,4,5,67";

       byte[] bytes1=str1.getBytes();//该方法返回值为内存地址

       System.out.println("字符串转为byte数组"+bytes1);

    }

}


 

5.字节流以字节数组形式读取数据:

用idea读取该记事本的数据 

该记事本f之后换行,换行为一个\n,占两个字节 

package wwx;

import jdk.swing.interop.SwingInterOpUtils;

import java.io.*;
import java.nio.charset.StandardCharsets;

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

        FileInputStream input = new FileInputStream("E:\\wwx\\xx\\wx.txt");

        byte[] bytes = new byte[5];
        System.out.println("第1次读取数据");
        int bytesLen = input.read(bytes);
        System.out.println("byte数组长度:"+bytesLen);
        System.out.println(new String(bytes));

        System.out.println("第2次读取数据");
        bytesLen = input.read(bytes);
        System.out.println("byte数组长度:"+bytesLen);
        System.out.println(new String(bytes));


        System.out.println("第3次读取数据");
        bytesLen = input.read(bytes);
        System.out.println("byte数组长度:"+bytesLen);
        System.out.println(new String(bytes));

        input.close();

    }

}

6.要求一次性读取wx.txt 中13个字节数据 :

package wwx;

import jdk.swing.interop.SwingInterOpUtils;

import java.io.*;
import java.nio.charset.StandardCharsets;
/*
要求一次性读取wx.txt 中13个字节数据
 */
public class Test {
    public static void main(String[] args) throws IOException {

        FileInputStream inputStream = new FileInputStream("E:\\wwx\\xx\\wx.txt");

        byte[] bytes = new byte[13];

        int len = inputStream.read(bytes);

        System.out.println("byte数组字节长度:"+len);

        System.out.println(new String(bytes));

        inputStream.close();

    }
}

7.字节流以1024字节读取数据:

 

package wwx;
import java.io.*;
/*
要求一次性读取wx.txt 中13个字节数据
 */
public class Test {
    public static void main(String[] args) throws IOException {
        FileInputStream inputStream = new FileInputStream("E:\\wwx\\xx\\wx.txt");

        byte[] bytes = new byte[1024];

        int len;
        while ((len = inputStream.read(bytes)) != -1) {
            System.out.println("byte数组字节长度:" + len);
            System.out.println(new String(bytes,0,len));
        }
        inputStream.close();
    }
}

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

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

相关文章

1.1 向量与线性组合

一、向量的基础知识 两个独立的数字 v 1 v_1 v1​ 和 v 2 v_2 v2​,将它们配对可以产生一个二维向量 v \boldsymbol{v} v: 列向量 v v [ v 1 v 2 ] v 1 v 的第一个分量 v 2 v 的第二个分量 \textbf{列向量}\,\boldsymbol v\kern 10pt\boldsymbol …

机器人制作开源方案 | 杠杆式6轮爬楼机器人

1. 功能描述 本文示例将实现R281b样机杠杆式6轮爬楼机器人爬楼梯的功能(注意:演示视频中为了增加轮胎的抓地力,在轮胎上贴了双面胶,请大家留意)。 2. 结构说明 杠杆式6轮爬楼机器人是一种专门用于爬升楼梯或不平坦地面…

thinkphp6 - 超详细使用阿里云短信服务发送验证码功能,TP框架调用对接阿里云短信发验证码(详细示例代码,一键复制开箱即用)

效果图 在thinkphp 5/6 框架(只要不是太低的版本就能用)中,实现接入调用阿里云短信服务详细教程,整个配置过程及示例代码保证小白也能轻松完成! 直接复制就行,改个阿里云参数就能用了。

MongoDB 简介和安装

一、MongoDB 相关概念 1.1 业务应用场景 1.1.1 三高需求 传统的关系型数据库(如 MySQL) ,在数据操作的 “三高” 需求以及应对 Web2.0 的网站需求面前,显得力不从心。”三高“ 需求如下所示,而 MongoDB 可应对 “三高…

C++入门指南:类和对象总结友元类笔记(下)

C入门指南:类和对象总结友元类笔记(下) 一、深度剖析构造函数1.1 构造函数体赋值1.2 初始化列表1.3 explicit关键字 二、static成员2.1 概念2.2 特性 三、友元3.1 友元函数3.2 友元类 四、 内部类4.1 概念4.2 特征 五、拷贝对象时的一些编译器优化六、深…

【C++】C++11 ——— 类的新功能

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C学习 🎯长路漫漫浩浩,万事皆有期待 上一篇博客:【C】STL…

JAVA中的垃圾回收

JVM规范说了并不需要必须回收方法区,不具有普遍性,永久代使用的是JVM之外的内存 引用计数:效率要比可达性分析要强,随时发现,随时回收,实现简单,但是可能存在内存泄漏 局部变量表,静态引用变量 …

Radius OTP实现VPN登录认证 安当加密

实现Radius OTP认证来完成VPN登录,需要使用支持Radius协议的VPN设备和客户端,以及一个Radius服务器来处理用户认证。 安当ASP身份认证平台作为一个企业通用的身份认证系统,集成了Radius认证功能,可满足所有支持radius认证的设备登…

【string题解 C++】字符串相乘 | 翻转字符串III:翻转单词

字符串相乘 题面 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 注意:不能使用任何内置的 BigIn…

基本微信小程序的电影票务系统-电影票预订系统

项目介绍 在传统的模式下,电影购票需要到当地的影院进行线下购票,既浪费时间,又消耗人力。线上购票可以满足消费者查看电影信息及购买电影票的需求,在一定程度上降低经济和时间成本[9]。目前已有一些手机app可以线上购票&#xf…

优化|优化处理可再生希尔伯特核空间的非参数回归中的协变量偏移

原文:Optimally tackling covariate shift in RKHS-based nonparametric regression. The Annals of Statistics, 51(2), pp.738-761, 2023.​ 原文作者:Cong Ma, Reese Pathak, Martin J. Wainwright​ 论文解读者:赵进 编者按: …

无名管道和有名管道

进程间通信的几种方式 无名管道(pipe) 无名管道(Unnamed Pipe)是一种在进程间进行单向通信的机制。它可以用于父进程与子进程之间的通信,或者同一父进程中不同子进程之间的通信。无名管道是一种特殊的文件&#xff0…

【(数据结构) —— 顺序表的应用-通讯录的实现】

(数据结构)—— 顺序表的应用-通讯录的实现 一.通讯录的功能介绍1.基于动态顺序表实现通讯录(1). 功能要求(2).重要思考 二. 通讯录的代码实现1.通讯录的底层结构(顺序表)(1)思路展示(2)底层代码实现(顺序表) 2.通讯录上层代码实现(通讯录结构…

IEDA 自动生成类注释和方法注释

1. 新建类,自动生成类注释的模板配置 File->Settings->Editor->File and Code Templates->Class /*** Description: TODO* Author: LT* Date: ${YEAR}-${MONTH}-${DAY}* Version:V3.5.6*/2. 通过快捷键,添加类注释和方法注释的模板设置 类…

六轴传感器 SH3001

SH3001简介 SH3001是Senodia公司生产的一款六轴姿态传感器,可测量芯片自身X、Y、Z轴的加速度以及角速度参数,通过姿态融合,进而得到姿态角。 三轴加速度计(Accelerometer):测量X、Y、Z轴的加速度。 三轴陀…

C++基础入门详解(一)

文章目录 前言命名空间展开命名空间使用C官方命名空间中的输入输出IO流输入输出的使用方法 缺省参数半缺省 函数重载 “你总以为机会无限,所以不珍惜眼前人” 前言 提到C,大部分人都想到的是复杂的语法和大量的规则,相对于java和python等语言…

基于YOLOv8模型的绵羊目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要:基于YOLOv8模型的绵羊目标检测系统可用于日常生活中检测与定位车辆目标,利用深度学习算法可实现图片、视频、摄像头等方式的目标检测,另外本系统还支持图片、视频等格式的结果可视化与结果导出。本系统采用YOLOv8目标检测算法训练数据集…

基于simulink的单相光伏系统并网储能控制仿真

本仿真涉及到:基于电导增量法的最佳功率点跟踪算法、蓄电池恒流_恒压充电算法、光伏逆变器并网算法、双向(同步)DCDC电路设计等知识。 辐照度变化曲线: 模拟仿真,低辐照度情况,蓄电池与光伏逆变器共同向…

软件项目管理实践指南:有效规划、执行和控制

软件项目管理是使软件产品、应用程序和系统成功交付的重要规程。它有助于确保软件在预算内按时开发,同时满足客户的质量和功能需求。 软件项目管理是管理软件项目生命周期的一种有组织的方法,包括计划、开发、发布、维护和支持。它是在满足客户需求的同时…

python:绘制回归预测结果真实值和预测值之间的散点密度图

作者:CSDN @ _养乐多_ 对博客《python:使用卷积神经网络(CNN)进行回归预测》中的,回归预测结果真实值和预测值之间的散点密度图升级了一下。 如下图所示, 文章目录 一、完整代码二、参考一、完整代码 def plot(y_test, y_test_predict, method):d