Java入门学习第十五天——Java常用工具之IO流(异常、字符流、字节流、File类)

javascript操作IO流 一、功能实现核心:FileSystemObject对象其实,要在js中实现文件操作功能,主要就是靠FileSystemObject对象. 二、FileSystemObject编程三部曲 使用FileSystemObject进行编辑要经过如下步骤:创建FileSystemObject对象、应用相关方法、访问相关属性, 立即下载

Java常用工具之IO流

根据API文档使用步骤查找并使用IO流体系中的类:

1.查找输入/输出流类

2.查看构造方法

3.创建输入/输出流对象

4.处理异常

5.读/写操作

6.关闭输入/输出设备

异常

异常:即非正常情况,通俗地说,异常就是程序出现的错误

异常的分类(Throwable 父类)

异常(Exception 子类):合理的应用程序可能需要捕获的问题(可预料的),这个才是需要我们处理的异常

如:NullPointerException(空指针异常)

错误(Error 子类):合理的应用程序不应该试图捕获的问题(不可预料的),不需要我们处理

如:StackOverFlowError(栈内存溢出)

异常的处理方式

JVM默认的异常处理方式:在控制台打印错误信息,并终止程序

开发中异常的处理方式:

1.try…catch(finally):捕获,自己处理

try {

​ //尝试执行的代码

} catch(Exception e) {

​ //出现可能的异常之后的处理代码

} finally {

​ //一定会执行的代码,如关闭资源,这里的代码正常情况下一定会执行,一般是用来释放资源的

}

特点:处理完异常之后程序会继续执行

package io.demo;

public class Test {
    public static void main(String[] args) {
        try {
//            尝试要执行的代码
            int a = 40 / 10;
            System.out.println(a);
            return;
        }catch (Exception e) {
//            出现异常之后的处理的代码
            System.out.println("被除数不能为0");
            return;           //结束方法
        }finally {              //即使try…catch中有return,finally里边的代码也会执行
            System.out.println("看看我能出现吗");
        }
//        System.out.println("看看我能出现吗");
    }
}
执行流程:

先执行try{}中的内容,看是否有问题(异常);没有:就直接执行finally语句中的内容;有:跳转到**catch(){}语句中开始执行,再执行finally{}**语句中的内容

2.throws:抛出,交给调用者处理

public void 方法名() throws Exception {

}

package io.demo;
//特点:执行结束之后,程序不再执行
public class Test2 {
    public static void main(String[] args) throws Exception {
//       调用show方法
//        因为show方法以及抛出一个异常,作为调用者(main函数)必须处理这个异常
//        方案一接着抛,main函数抛给jvm
//        show();
//        方案二:try…catch处理
        try {
            show();
        } catch (Exception e) {
            System.out.println("代码出问题了");
        } finally {
            System.out.println("看看我执行了吗");
        }

    }
    public static void show() throws Exception {
        int a = 20 / 0;
        System.out.println("a:"+a);
    }
}
IO流概述

IO流:I/O,即输入(Input)输出(Output),IO流指的是数据像连绵的流体一样进行传输。用来进行数据传输的一项技术

IO流能干什么:在本地磁盘和网络上操作数据

IO流的分类:

按数据流向分:输入流(读取数据);输出流(往外写数据);

按操作方式分:

字节流:InputStream(字节输入流);OutputStream(字节输出流)

字符流:Reader(字符输入流);Writer(字符输出流)

IO流体系

字符流:按字符读写数据的IO流

Reader(抽象类)

子类:FileReader(普通字符输入流);BufferedReader(高效字符输入流)

Writer(抽象类)

子类:FileWriter(普通字符输出流);BufferedWriter(高效字符输出流)

字节流:按字节读写数据的IO流

InputStream(抽象类)

子类:FileInputStream(普通字节输入流);BufferedInputStream(高效字节输入流)

OutputStream(抽象类)

子类:FileOutputStream(普通字节输出流);BufferedOutputStream(高效字节输出流)

src右键—>File

IO流简介:
    概述:
        I(Input,输入)/O(Output,输出)流,是java中用来传输数据的方式
    划分:
    按照流向分:
        输入流:读数据

        输出流:写数据

    按照操作分:
        字节流:以字节为单位来操作数据
            InputStream:字节输入流的顶层抽象类
                FileInputStream:普通字节输入流
                BufferedInputStream:高效字节输入流(也叫:字节缓冲输入流)

            OutputStream:字节输出流的顶层抽象类
                FileOutputStream:普通字节输出流
                BufferedOutputStream:高效字节输出流(也叫:字节缓冲输出流)

        字符流:以字符为单位来操作数据
            Reader:字符输入流的顶层抽象类
                FileReader:普通字符输入流
                BufferedReader:高效字符输入流(也叫:字父缓冲输入流)

            Writer:字符输出流的顶层抽象类
                FileWriter:普通字符输出流
                BufferedWriter:高效字符输出流(也叫:字符缓冲输出流)
File类

概念:文件,文件夹,一个File对象代表磁盘上的某个文件或文件夹;就是用来操作文件(夹)路径的

构造方法:

File(String pathname)

File(String parent,String child)

File(File parent,String child)

有了构造方法就有了对象,有了对象就可以调用成员方法了

成员方法

创建功能:

createNewFile():创建文件

mkdir():创建单级目录

mkdirs():创建目录

判断功能:

isDirectory():判断File对象是否为目录

isFile():判断File对象是否是文件

exists():判断File对象是否存在

要自行在项目下创建一个文件夹:右键项目—>new—>Directroy
文件夹下创建一个文件夹:右键文件夹—>new—>Directroy
文件夹下创建一个文件:右键文件夹—>new—>File

package io.demo;

import java.io.File;
import java.io.IOException;

/*
    构造方法
    File(String pathname)
    File(String parent,String child)
    File(File parent,String child)
    成员方法:
    创建功能:如果不存在就创建,返回true;否则就不创建,就返回false
    createNewFile():创建文件
    mkdir():创建单级目录
    mkdirs():创建多级目录(也可创建单级目录)
    make directory的缩写
    判断功能:
    isDirectory:判断File对象是否为目录
    isFile():判断File对象是否是文件
    exists():判断File对象是否存在
 */
public class Test3 {
    public static void main(String[] args) throws IOException {
//        需求:将D:\abc\1.txt封装成File对象
//        方式一:根据字符串形式的路径获取File对象
        File file1 = new File("D:\\abc\\1.txt");     //D:\abc\1.txt=D:/abc/1.txt
        System.out.println("file1:"+file1);
//        方式二:根据字符串形式的父目录以及子目录创建File对象
        File file2 = new File("D:/abc","1.txt");
        System.out.println("file2:"+file2);
//      方式三:根据父目录对象,以及字符串形式的子目录来获取File对象
        File file3 = new File("D:/abc");
        File file4 = new File(file3,"1.txt");
        System.out.println("file4:"+file4);
        System.out.println("——————————");

//        在D盘下创建2.txt文件
        File file5 = new File("d:/2.txt");
        boolean flag = file5.createNewFile();
        System.out.println("flag:"+flag);//第一次打印,是true,说明已经创建成功,再打印一次,是false,因为已经存在了
//        需求:在D盘下创建一个a文件夹
        File file6 = new File("D:/a");
        boolean mkdir = file6.mkdir();
        System.out.println("file6:"+mkdir);
//        需求:在D盘下创建a/b/c文件夹(创建嵌套的文件夹)
        File file7 = new File("D:/a/b/c");
        boolean mkdirs = file7.mkdirs();
        System.out.println("mkdirs:"+mkdirs);

        System.out.println("————————");
        System.out.println("测试判断功能");

        File file8 = new File("D:/a/b");
        System.out.println("判断file8是否为文件夹:"+file8.isDirectory());
        System.out.println("判断file8是否为文件:"+file8.isFile());
        System.out.println("判断file8是否为存在:"+file8.exists());
    }
}

获取功能:

getAbsolutePath():获取绝对路径

getPath():获取文件的相对路径

getName():获取文件名

list():获取指定目录下所有文件(夹)名称数组。(返回值是String类型)

listFile():获取指定目录下所有文件(夹)File对象数组

绝对路径:以盘符开头的路径,固定的,写“死”的路径;例如:D:/1.txt

相对路径:一般是相对于当前项目的路径来说的;例如:1.txt

package io.demo;

import java.io.File;

/*
    获取功能:
    getAbsolutePath():获取绝对路径
    getPath():获取文件的相对路径
    getName():获取文件名
    list():获取指定目录下所有文件(夹)名称数组。(返回值是String类型)
    listFile():获取指定目录下所有文件(夹)File对象数组
 */
public class Text4 {
    public static void main(String[] args) {
        File file1 = new File("lib/1.txt");
//        获取file1的绝对路径
        String abs = file1.getAbsolutePath();
        System.out.println("file1的绝对路径:"+abs);
//        获取file1的相对路径
        String path = file1.getPath();
        System.out.println("file1的相对路径:"+path);
//        获取文件名
        String name = file1.getName();
        System.out.println("file的文件名为:"+name);
//        获取lib文件夹下所有的文件(夹)的名称数组String[]
        File file2 = new File("lib");
        String[] names = file2.list();      //这获得的是名字
        for (String s : names) {
            System.out.println("名称为:"+s);
        }

        System.out.println("——————————————————");
//        获取lib文件夹下所有的文件(夹)的File对象数组File[]
        File[] files = file2.listFiles();       //这获得的是一个对象,可以调用
        for (File file : files) {
//            System.out.println("File对象:"+file);
            System.out.println("File对象:"+file.exists());
        }
    }
}
Ships Dataset:解锁海洋探索的数字宝库 在海上交通管理中,通过对船舶的持续跟踪,可以及时发现船舶的异常行为,如偏离航线、超速等,保障海上航行的安全。例如,通过分析船舶的航行数据和位置信息,合理安排船舶的停靠时间和装卸货物顺序,避免港口拥堵,提高船舶的周转率。同时,还精确标注了船舶在图像中的位置坐标,通过这些坐标,我们可以准确地定位船舶在图像中的具体位置,为后续的分析和处理提供了精确的依据。从繁忙运输货物的货船,到承载着能源使命的油轮,再到穿梭于海洋寻找鱼群的渔船 ,每一种船舶都有着独特的外形和功能,在数据集中留下了它们的身影。 阅读详情

相关推荐

SAP License:SAP会计凭证抬头的字段状态控制

FI模块的同事一般都知道在FI中有个字段状态变式,可以控制在凭证输入时哪些字段是必输、哪些可选哪些隐藏,但这只对凭证行项目中有效,你是否想过对于凭证抬头的字段是哪控制呢? 在中国,会计附件上都要带一个附件张数字段,但SAP的默认配置中没有这一字段,并非SAP没有设置此字段,而是我们没有配置这一字段。如果需要在凭证输入时放出分支号(BRNCH)、附件页数(NUMPG)等字段,在个人参数文件中加入参数CSF,参数值AR,即可。如下图: 实际上,这是对凭证国家的一个设置,在SAP中,配置了AR这个国家..

SAP权限管控|SAP用户权限管理|SAP权限合规检查|SAP全日志管理 2225

IO流操作文件相关方法(一)

一.file类对文件的基本操作 文件的基本操作: 1.创建功能: (1.)createNewFile(): 1.该方法会抛出一个IOException异常,该异常是一个编译时异常,必须处理 2.该方法创建的是文件,而不是文件夹 3.如果文件已经创建,就不会再创建了,返回false File file = new File("D:\\JavaSE\\day\\resource\\a.txt");...

Biaoooos的博客 503

西工大noj100题python2024第三季21-30

【代码】西工大noj100题python2024第三季21-30。

weixin_70523540的博客 1578

Java常用工具类之IO流工具类

package com.wazn.learn.util; import java.io.Closeable; import java.io.IOException; /** * IO流工具类 * * @author yangzhenyu * */ public class IOUtil { /** * 关闭一个或多个流对象 ...

weixin_34409357的博客 1055

从理想光源到部分相干:Abbe与Hopkins模型在计算光刻中的演进与选择

本文深入探讨了计算光刻中Abbe模型与Hopkins模型的演进与选择,分析了理想光源与部分相干光源在光刻仿真中的关键差异。Abbe模型基于理想点光源假设,计算简洁但存在精度局限;Hopkins模型则通过互强度函数和TCC技术,更准确地模拟现实中的部分相干光源,尤其适用于先进节点光刻工艺。文章还提供了模型选择的实用建议,帮助工程师在精度与效率间取得平衡。

weixin_29217235的博客 298

腾讯开源CubeSandbox:为Agent打造可随时丢弃的安全沙箱环境

在人工智能与自动化技术快速发展的今天,智能体(Agent)在执行复杂任务时往往需要独立、完整的计算环境,但环境失控带来的安全风险一直是落地瓶颈。为解决这一痛点,可丢弃式沙箱技术应运而生。它通过轻量虚拟化原理实现环境秒级重建,并严格隔离宿主资源,即使Agent执行了恶意或误操作,也不会波及其他系统。这种技术价值在于平衡了灵活性与安全性,使开发者敢于赋予Agent更多自主操作权限。目前,这类技术已广泛应用于AI编程、自动化测试、数字员工、恶意代码分析等真实场景,成为Agent可靠运行的基石。腾讯开源的CubeS

weixin_42539414的博客 256

js操作IO流

一、功能实现核心:FileSystemObject对象其实,要在js中实现文件操作功能,主要就是靠FileSystemObject对象. 二、FileSystemObject编程三部曲 使用FileSystemObject进行编辑要经过如下步骤:创建FileSystemObject对象、应用相关方法、访问相关属性, (一)创建FileSystemObject对象,创建FileSystemOb

hubowei的专栏 7503

【低空经济】无人机充电站设计方案

随着无人机技术的快速发展和广泛应用,其在物流、农业、巡检、救援等领域的应用日益普及。然而,无人机的续航能力一直是限制其大规模应用的关键因素之一。为了解决这一问题,无人机充电站的设计与建设显得尤为重要。本项目旨在设计一套高效、智能、可扩展的无人机充电站系统,以满足不同场景下无人机的充电需求,提升其作业效率和应用范围。无人机充电站的设计将围绕以下几个核心目标展开:首先,充电站应具备快速充电能力,以减少无人机的停机时间,提高作业效率;

2960

Java --- IO流

一 IO流学习目标 二 学习IO (一) 基本概念 1 IO流 A 什么是IO流 I/O,即输入(Input)输出(Output),IO流指的是数据像连绵的流体一样进行传输。 B 作用 在本地磁盘或网络上传输(读/写)数据 C 分类 按数据流向分: 输入流 输出流 按操作方式分: 字节流: InputStream OutputStream 字符流: Reader W...

xinyuezitang的博客 310

保姆级QFIL线刷教程:从驱动安装到成功刷机的完整避坑指南(Win10/11实测)

本文提供了一份详细的QFIL线刷教程,涵盖从驱动安装到成功刷机的完整流程,特别针对Win10/11系统进行了实测。文章重点解决了EDL模式下的常见问题,如Download Fail和COM Port识别错误,并提供了实用的避坑技巧和故障排除方案,帮助用户实现零失误操作。

weixin_29245767的博客 765

海康威视web控件开发+vue结合做网页开发

需求:vue的项目,需要在页面展示出海康的硬盘录像机连接的摄像头的实时监控画面以及回放功能. 准备:web开发包(包含插件以及demo,在海康官网即可下载32位64位的都有.那些需要积分下载的博主良心不疼么.) 点击这里下载:链接: https://pan.baidu.com/s/12FrbycWyWWyiRJH5Yd1tPA 提取码: gam5 开始开发: 1.安装demo目录下的WebComponentsKit.exe插件(根据自己的浏览器以及系统选择32位还是64位的插件) 2.打.

u013682258的博客 8484

新手小白学JAVA IO流 File 字节流 字符流

IO简介 1 流Stream 在学习IO流之前,我们首先需要学习的概念就是Stream流 为了方便理解,我们可以把数据的读写操作抽象成数据在"管道"中流动,但需注意: 1.流只能单方向流动 2.输入流用来读取 → in 3.输出流用来写出 → out 4.数据只能从头到尾顺序的读写一次 所以以程序的角度来思考,In/out 相对于程序而言的输入(读取)/输出(写出)的过程. 2 IO流的继承结构 在java中,根据处理的数据单位不同,可以把流分为字节流和字符流 字节流 : 针对二进制文件 字符流 : 针对

程序媛泡泡的博客 7万+

FPGA中的CMAC硬核与Interlaken硬核

CMAC硬核和Interlaken硬核是FPGA中两种重要的内置功能模块,它们分别在CNN推理和高带宽芯片到芯片接口方面发挥着关键作用。FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)中的CMAC硬核与Interlaken硬核是两种重要的内置功能模块,它们在FPGA设计中扮演着关键角色。需要注意的是,FPGA设计中的硬核选择不仅取决于硬核本身的性能,还需要考虑硬核与FPGA芯片其他部分的兼容性、功耗、成本等因素。Interlaken硬核。

weixin_41230430的博客 1481

Java中文件读写——File类,IO流,字符流,字节流

File类是什么? 1.在读写数据时告诉JVM要操作的文件或文件夹在哪。 2.对文件或文件夹本身进行操作。包括创建,修改,删除等操作。 IO流是什么? 1.可以将数据从本地文件中读取出来。 2.可以将数据从内存中保存到本地文件。 File类的构造方法 1.File时文件和目录路径名的抽象表示。 2.文件和目录可以被File封装成对象。 3.File封装的对象仅仅是一个路径名,它可以存在也可以不存在。 4.构造方法: File(String pathname) // 通过给定路径名字符串转换为抽象路径名来创

Stars____的博客 5197

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

java之IO篇——File、字节流、字符流

IO流是用于读写文件中的数据,要读写文件之前可以创建文件获取文件对象再创建IO流,正文会先介绍File类,通过File类的构造方法获取文件的对象,创建文件或目录以及File类的一些方法获取文件对象的属性。后面还介绍了相关的IO流体系,字节流和字符流的区别用法。目录前言一、File1.常用的成员方法(1) 判断、获取(2)创建、删除(3)获取并遍历2. 实操(1)遍历C盘下的以.avi结尾的文件(2)删除一个多级文件夹(里面的有些文件有内容)(3)统计各种文件的数量二、IO流分类三、IO体系1.字节流。

2202_75483664的博客 1710

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Java文件操作、IO流

文章目录1. File类1.1 File类概述和构造方法1.2 File类创建功能1.3 File类判断和获取功能1.4 File类删除功能2. 递归2.1 递归2.2 递归求阶乘2.3 递归遍历目录3. IO流3.1 IO流概述和分类3.2 字节流写数据3.3 字节流写数据的三种方式3.4 字节流写数据的两个小问题3.5 字节流写数据加异常处理3.6 字节流读数据(一次读一个字节数据)3.7 字节流复制文本文件3.8 字节流读数据(一次读一个字节数组数据)3.9 字节流复制图片4. 字节缓冲流4.1 字节

terence的博客 5112

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Day16_IO框架1(File类, IO流, 字节流字符流, IO异常, Properties)

文章目录一. File类1.1 概述1.2 File类的静态成员变量1.3 路径绝对路径相对路径1.4 构造方法1.5 常用方法获取功能的方法判断功能的方法创建删除功能的方法遍历目录的方法【例】打印多级目录 (递归)【例】文件搜索1.6 FileFilter接口【例】文件搜索(FileFilter优化)【例】补充:文件搜索(Lambda优化)二. IO流的概念2.1 什么是IO?2.2 什么是流?2.3 流的分类输入流 和 输出流字节流 和 字符流节点流 和 处理流三. 字节流3.1 字节流的父类:3.2

不愿透露姓名的马建国的博客 1258

【JAVA】方法引用,异常,File,IO流知识总结

定义异常类写继承关系空参构造带参构造所有异常都必须是 Throwable 的子类。如果希望写一个检查性异常类,则需要继承 Exception 类。如果你想写一个运行时异常类,那么需要继承 RuntimeException 类。// 自定义异常类的代码意义:自定义异常的意义在于提高程序的可读性和可维护性,使得控制台输出的错误信息更加具有意义和可理解性。

Patrick_yuxuan的博客 1285

第14章 Java之File类与IO流

第14章 File类与IO流

xqmids99的博客 1162

Java IO流基础:IO流 文件 字符流 字节流 处理流等...

Java IO流的四个抽象基类如下,Java IO流都是从这四个基类派生出的,由这四个类派生出的子类名称都是以其父类名称作为子类名后缀,例如:FileInputStream就是字节输入流,FileWrite就是字符输出流。,在序列化时,会将对象的serialVersionUID写入到字节序列中,反序列化时会检查接收方对象的serialVersionUID是否与序列化时写入的一致,如果一致则反序列化成功,不一致则报错。,也可以提供更方便的方法来完成输入输出,此外,处理流不会与数据源直接接触。

IH_LZH的博客 1303

Java IO流之File类和字节流

Java IO流是Java比较重要的一个知识点,它使Java应用程序具备了对系统文件及文件内容的增删改查操作的功能,从而使Java应用程序数据可以实现持久化存储。本篇博客将介绍Java IO流体系中的File类和字节流。

weixin_45676761的博客 980

file和io流

本文详细介绍了Java中的File类与IO流,涵盖了File类的基本操作、IO流的工作原理、分类(按流向、处理方式和功能),以及FileReader、FileWriter、InputStream/OutputStream、Buffered流和对象流的使用,包括序列化与反序列化示例

weixin_67205556的博客 1432

java文件File和IO流(一)-- File文件,IO流,缓冲流,字节流,字符流

因为字符每个国家都不一样,所以涉及到了字符编码问题,那么GBK编码的中文用unicode编码解析是有问题的,所以需要获取中文字节数据的同时+ 指定的编码表才可以解析正确数据。处理字节数据的流对象。I/O是Input/Output的缩写,I是指Input(输入),O是指Output(输出),I/O技术是非常实用的技术,用于。是给字符输出流提高效率用的,那就意味着,缓冲区对象建立时,必须要先有流对象。2. 在这四个系统中,它们的子类,都有一个共性特点:子类名后缀都是父类名,前缀名都是这个子类的功能名称。

牛大圣 1193

JAVA -API - File IO流 字节流 字符流

文章目录IO简介流Stream在学习IO流之前,我们首先需要学习的概念就是Stream流IO流的继承结构File文件类概述创建对象常用方法练习:测试常用方法字节流读取InputStream抽象类FileInputStream子类BufferedInputStream子类练习:字节流读取案例字符流读取Reader抽象类FileReader子类BufferedReader子类练习:字符流读取案例字节流写出OutputStream抽象类FileOutputStream 子类BufferedOutputstream

weixin_47790139的博客 671

IO流相关知识(File,字节流,字符流,特殊操作流(标准输入流,标准输出流,对象序列化与反序列化,properties与IO流结合

面试前的“练手”还是很重要的,所以开始面试之前一定要准备好啊,不然也是耽搁面试官和自己的时间。我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!练手”还是很重要的,所以开始面试之前一定要准备好啊,不然也是耽搁面试官和自己的时间。

2401_84415203的博客 1002

IO流相关知识(File,字节流,字符流,特殊操作流(标准输入流,标准输出流

2.字节流写数据记得一定要释放资源3.字节流写数据的两个小问题。

2401_85111562的博客 968
上一篇: Java学习案例之模拟斗地主发牌
下一篇: Java学习第十六天——字符流读写文件、字符缓冲流拷贝文件
初级码农小九
博客等级 码龄6年 40粉丝 199原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值