
Java
崔凯洋
南京本科 Base上海,在职SpringCloudAlibaba微服务开发工程师,Go语言开发爱好者。
原标签:江苏无锡高职在校生-19级软件系
Java学习者爱好者
小时候,语文老师教会我什么是公平公正的定义,
长大后,目睹了某些传道受业解惑老师行使权力的全过程,从此,公平的旗帜在我世界里已支零破碎
后来有位智者说,这就是现状,不是现实
展开
-
Class BufferedReader字符缓冲输入流
Class BufferedReader字符缓冲输入流java.io.BufferedReader extends Reader继承自父类共性的成员方法:abstract void close() 关闭流并释放与之相关联的任何系统资源。 void mark(intreadAheadLimit) 标记流中的当前位置。 boolean markSupported() 告诉这个流是否支持mark()操作。 .原创 2020-12-03 15:38:59 · 290 阅读 · 0 评论 -
Java中使用字符缓冲流写入数据到文本文件
字符缓冲流BufferedWriter(Writerout) 创建使用默认大小的输出缓冲区的缓冲字符输出流。 BufferedWriter(Writerout, intsz) 创建一个新的缓冲字符输出流,使用给定大小的输出缓冲区。 Writerout:字符输出流,我们可以传递FileWriter,缓冲流会给FileWriter增加一个缓冲区,提高FileWriter的写入效率intsz:指定缓冲区的大小,不写默认大小使用步骤:...原创 2020-12-03 15:16:03 · 2548 阅读 · 0 评论 -
Java中字节缓冲流单个和数组方法文件复制效率的比较
文件复制的步骤:1、创建字节缓冲输入流对象,构造方法中传递字节输入流2、创建字节缓冲输出流对象,构造方法中传递字节输出流3、使用字节缓冲输入流对象中的read方法,读取文件4、使用字节缓冲输出流中的方法write,把读取到的数据写入带内部缓冲区中5、释放资源package com.baidu.Buffered;import java.io.*;public class 文件复制字节缓冲流 { public static void main(String[] args原创 2020-12-03 14:27:27 · 253 阅读 · 0 评论 -
Java中BufferedInputStream的read()方法和read(byte[] b)方法读取读取文本文件
BufferedInputStream流的内部缓冲区是字节数组java.io.BufferedInputStream extends InputStreamBufferedInputStream:字节缓冲输入流继承自父类的成员方法:abstract int read() 从输入流读取数据的下一个字节。 int read(byte[]b) 从输入流中读取一些字节数,并将它们存储到缓冲器阵列 b 。 void close.原创 2020-12-03 13:24:54 · 6927 阅读 · 0 评论 -
缓冲流BufferedOutputStream使用步骤
缓冲流也叫高效流,是对基本的FileXxx流的增强字节缓冲流:BufferedInputStream,BufferedOutputStream字符缓冲流:BufferedReader,BufferedWriter缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率字节缓冲流:构造方法:BufferedInputStream(InputStreamin) 创建一个 BufferedInput.原创 2020-12-03 11:11:49 · 5528 阅读 · 0 评论 -
Java中基本字节输入流和字节缓冲输入流的区别
基本字节输入流使用基本字节输入流读取文件 FileInputStream字节缓冲输入流给基本的字节输入流增加一个缓冲区(数组),提高基本的字节输入流的读取效率原创 2020-12-03 10:30:46 · 364 阅读 · 0 评论 -
Java中Properties集合中将数据写入到文本文件的方法的使用步骤
/* 可以使用Properties集合中的方法store,把集合中的临时数据,持久化写入到银盘中存储 void store(OutputStream out, String comments) 将此 Properties表中的此属性列表(键和元素对)以适合于使用 load(InputStream)方法加载到 Properties表格的格式写入输出流。 void store(Writer writer, String comments) 将此属性列表(键和元素对)写入此 Prop.原创 2020-12-03 09:37:13 · 1244 阅读 · 0 评论 -
Java中Properties集合中的方法load读取文本文件中的数据
Properties集合中的方法load,把硬盘中保存的文件(键值对),读取到集合中使用#save data#Wed Dec 02 20:25:04 CST 2020菠萝吹雪=180电灯泡=2000上官子怡=170我们要把这个读到硬盘中使用 void load(InputStreaminStream) 从输入字节流读取属性列表(键和元素对)。 void load(Readerreader) 以简单的线性格式从输入字符..原创 2020-12-03 09:36:51 · 915 阅读 · 0 评论 -
Properties类表示一组持久的属性。 Properties可以保存到流中或从流中加载。属性列表中的每个键及其对应的值都是一个字符串
java.util.Properties集合 extends Hashtable <K,V> implements Map<K,V>Properties类表示一组持久的属性。 Properties可以保存到流中或从流中加载。Properties集合是唯一一个和IO流相结合的集合void load(InputStreaminStream) 从输入字节流读取属性列表(键和元素对)。 void store(OutputStrea..原创 2020-12-03 09:35:57 · 283 阅读 · 0 评论 -
JDK7和JDK9 try catch处理流对象的新特性与区别
JDK7的新特性:在try的后面可以增加一个(),在括号中可以定义流对象,流对象的作用域就在try中有效try中的代码执行完毕,会自动把流对象释放,就不用写finally了格式:格式:try(定义流对象。。。。可以定义多个){ 可能会产生的异常代码}catch(){ 异常的处理逻辑}package com.baidu.文件类的代码;import java.io.FileInputStream;import java.io.FileOutputStream;原创 2020-12-03 09:36:18 · 408 阅读 · 0 评论 -
Java中流在使用过程中异常的处理try catch finally及Exception in thread “main“ java.lang.NullPointerException的处理
JDK7前处理在之前的练习中,我们一直把异常抛出,而实际的开发中并不能这样处理,建议使用try catch finally代码块,处理异常部分格式:格式: try{ 可能会产出异常的代码 }catch(异常类的变量 变量名){ 异常的处理逻辑 }finally{ 一定会执行的代码 资源释放 }变量所在的作用域在:变量所在的大括号范围内有效1、提高变量的作用域(拿变量到大括号的外面)作原创 2020-12-02 18:11:53 · 393 阅读 · 0 评论 -
Java中的字符输出流的续写和换行写
续写和换行续写,追加写:使用两个参数的构造方法FileWriter(Filefile, booleanappend) 给一个File对象构造一个FileWriter对象。 FileWriter(StringfileName, booleanappend) 构造一个FileWriter对象,给出一个带有布尔值的文件名,表示是否附加写入的数据。 参数:StringfileName,Filefile:写入数据的目的地boolea...原创 2020-12-02 16:31:38 · 1349 阅读 · 0 评论 -
字符输出流写数据的write方法--在java.io.FileWriter extends OutputStreamWriter extends Writer
Writer类中共性成员方法:void write(char[]cbuf) 写入一个字符数组。 abstract void write(char[]cbuf, intoff, intlen) 写入字符数组的一部分。 void write(intc) 写一个字符 void write(Stringstr) 写一个字符串 void write(Strin...原创 2020-12-02 16:16:44 · 199 阅读 · 0 评论 -
close方法和flush方法的区别---关闭和刷新及流关闭异常出现的原因Exception in thread “main“ java.io.IOException: Stream closed
因为内置缓冲区区的原因,如果不关闭流,无法写出字符到文件中。但是关闭流对象,是无法继续写出数据的。如果我们既想写出数据,又想继续使用流。就需要flush方法了flush:刷新缓冲区,流对象可以继续使用close:先刷新缓冲区,然后通知系统释放资源。流对象就不可以被使用了一句话,关闭流,就不能写入数据了,刷新后可以继续调用write方法继续写入package com.baidu.字节输入输出流;import java.io.FileWriter;import java.io.IOE原创 2020-12-02 10:56:04 · 873 阅读 · 0 评论 -
字符输出流的基本使用-写出单个字符到文本文件中代码实现
字符输出流的使用步骤(重点):1、创建FileWriter对象,构造方法中绑定要写入数据的目的地2、使用FileWrite中的方法Write,把数据写入到内存缓冲区中(字符转换为字节的过程)3、使用FileWriter中的方法flush方法,把内存缓冲区的数据,刷新到文件中4、关闭流,释放资源(先把内存缓冲区中的数据刷新到文件中,第三步可以不用写)如果不执行flush就不会写入由内存写入到硬盘中去的,因为写入到了缓冲区中,只有调用第四步(或者flush方法)才会在文件中看到调用write原创 2020-12-02 10:41:10 · 514 阅读 · 1 评论 -
java.io.FileWriter extends OutputStreamWriter extends Writer的知识点概述
Writer 用于写入字符流的抽象类。 Writer字符输出流最顶层的父类java.io.Writer:字符输出流,是所有字符输出流的最顶层的父类,是一个抽象类共性成员方法方法:Writer append(charc) 将指定的字符附加到此作者。 Writer append(CharSequencecsq) 将指定的字符序列附加到此作者。 Writer append(CharSequen...原创 2020-12-02 10:22:19 · 192 阅读 · 0 评论 -
Java中使用字符输入流读取记事本里的内容及构造方法的举例、使用String类构造方法
创建流对象的时候,必须传入一个文件路径 类似于FileInputStream构造举例:①/使用文件名创建流对象FileReader fr = new FileReader("F:\\develop\\h.txt");②File file = new File("F:\\develop\\h.txt");FileReader fr = new FileReader(file);字符输入流的使用步骤1、创建FileReader对象,构造方法中绑定要读取的数据源2、使用FileRe原创 2020-12-02 10:07:04 · 468 阅读 · 0 评论 -
Java中字符输入流的概念 Reader类和其直接子类FileReader类的知识
Reader是字符输入流最顶层的父类Reader 用于读取字符流的抽象类。 Reader类中定义的共性成员方法:abstract void close() 关闭流并释放与之相关联的任何系统资源。 void mark(intreadAheadLimit) 标记流中的当前位置。 boolean markSupported() 告诉这个流是否支持mark()操作。 int .原创 2020-12-02 08:25:01 · 1482 阅读 · 0 评论 -
Java中使用字节流读取中文的问题--一定要注意各种编码占用的字节数
使用字节流读取中文的问题---会出现各种各样的错误,一定要注意各种编码占用的字节实现文件的复制都是都过字节流的形式复制的,也就是说在操作系统调用写入获取方法时候,只认识字节流字节流显然不符合中文等一些语言的实际场景,比如1个中文GBK:占用两个字节UTF-8:占用3个字节使用字节流读取中文文件,读取字母没啥问题,一旦是中文必然是乱码先看一段代码一package com.baidu.字节输入输出流;import java.io.FileInputStream;import.原创 2020-12-02 08:25:37 · 684 阅读 · 0 评论 -
Java中使用字节流实现文件复制代码------属于Java I/O流的知识
文件复制练习预定路径文件名明确:数据源:C:\1.jpg数据的目的地:F:\develop\1.jpg文件复制的步骤:1、创建一个字节输入流对象,构造方法 中绑定要读取的数据源2、创建一个字节输出流对象,构造方法中绑定要写入的目的地3、使用字节输入流对象中的read方法读取文件4、使用字节输出流中的write方法,把读取到的字节写入到目的地文件中5、关闭流,释放资源一次读取一个字节写入一个字节的方式的文件复制package com.baidu.字节输入输出流;原创 2020-12-02 08:25:57 · 272 阅读 · 0 评论 -
Java中字节 输入流一次读取多个字节代码实现和原理-图文分析
字节输入流一次读取多个字节的方法int read(byte[] b) 从该输入流读取最多 b.length个字节的数据到一个字节数组明确两件事情:1、方法的参数byte[] 的作用 起到缓冲作用,存储每次读取到的多个字节 数组的长度定义为1024(1kb)或者是1024的整数倍2、方法的返回值int是什么? 每次读取的有效字节个数String类的...原创 2020-12-01 17:32:20 · 1352 阅读 · 0 评论 -
误导入包import com.sun.org.apache.xpath.internal.operations.String;
再一次学习中,发现main方法怎么也运行不了解决办法:删除刚刚误导入的包即可import com.sun.org.apache.xpath.internal.operations.String;原创 2020-12-01 16:02:33 · 986 阅读 · 0 评论 -
Java中字节输入流一次读取一个字节的原理--图文分析
字节输入流的使用步骤(重点):1、创建FileInputStream对象,构造方法中绑定要读取的数据源2、使用FileInputStream对象中的方法read,读取文件3、释放资源原创 2020-12-01 14:11:15 · 298 阅读 · 0 评论 -
Java中字节输入流的使用步骤用while循环来读取字节并使用read无参方法
读取数据的原理(硬盘到内存中)java程序---->JVM--->OS ----->OS读取数据的方法----->读取文件字节输入流的使用步骤(重点):1、创建FileInputStream对象,构造方法中绑定要读取的数据源2、使用FileInputStream对象中的方法read,读取文件3、释放资源package com.baidu.字节输入输出流;import java.io.FileInputStream;import java.io.IOEx原创 2020-12-01 13:47:24 · 2173 阅读 · 1 评论 -
Java中字节输入流InputStream类概述 属于字节流字符流的知识
InputStream 这个抽象类是表示输入字节流的所有类的超类。 抽象类无法创建对象,在使用的时候,必须使用其子类InputStream(字节输入流)中定义的共性成员方法:int available() 从下一次调用此输入流的方法返回可从该输入流读取(或跳过)的字节数,而不会阻塞。 void close() 关闭此输入流并释放与流相关联的任何系统资源。 void mark(intreadlim..原创 2020-12-01 13:18:19 · 499 阅读 · 0 评论 -
Java中输出流续写和换行写方法,需要用到的构造方法的知识点
/* FileOutputStream(String name, boolean append) 创建文件输出流以指定的名称写入文件。 FileOutputStream(File file, boolean append) 创建文件输出流以写入由指定的 File对象表示的文件。 创建指定File对象表示的文件中写入数据的文件输出流 构造方法的参数: String name,File file:写入数据的目的地...原创 2020-12-01 12:25:55 · 231 阅读 · 0 评论 -
Java中字节输出流写多个字节的方法write(byte[] b)、write(byte[] b)方法的使用
void write(byte[] b)void write(byte[] b)package com.baidu.字节输入输出流;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.util.Arrays;/* void write(byte[] b) 将 b.l.原创 2020-12-01 11:57:16 · 1617 阅读 · 0 评论 -
文件存储的原理和记事本打开文件编码转换问题----属于I/O流基础知识
硬盘中只能存储二进制数据把字节转换成字符方便我们阅读写数据的时候会把十进制的整数97,转换为二进制整数97fos.write(1100001); 97--->1100001硬盘中存储的数据都是字节1个字节=8个比特位(例如:10101010)任意文本编辑器(记事本、notepad++)在打开文件的时候,会查询编码表,把字节转换为字符表示0-127:查询ASCII97---》a其他值:查询系统默认编码表(中文系统GBK)附录:ascii码对照表原创 2020-12-01 10:13:32 · 294 阅读 · 0 评论 -
Java中字节输出流写入字节到文件---属于字节流字符流的知识
写入数据的原理(内存-->硬盘) java程序---->JVM(java虚拟机)--->OS操作系统--->OS调用写数据的方法把数据写入到文件中我们没有权限将数据直接写入到Windows等其他操作系统的文件中,是通过java程序一步一步的去调用系统自己的方法写入数据字节输出流的使用步骤(重点):1、创建FileOutputStream对象,构造方法中传递写入数据的目的地2、调用FileOutputStream对象中的write方法,把数据写入到文件中3..原创 2020-12-01 09:52:59 · 1222 阅读 · 0 评论 -
Java中字节输出流OutputStream类概述 属于字节流字符流的知识
OutputStream 这个抽象类是表示字节输出流的所有类的超类。 OutputStream(字节输出流)中定义的共性成员方法:void close() 关闭此输出流并释放与此流相关联的任何系统资源。 void flush() 刷新此输出流并强制任何缓冲的输出字节被写出。 void write(byte[]b) 将 b.length字节从指定的字节数组写入此输出流。 ..原创 2020-12-01 09:23:35 · 509 阅读 · 0 评论 -
一切皆为字节
一切皆为字节一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时候,我们要时刻明确,无论使用什么样的流对象,底层传输的始终为二进制数据。...原创 2020-11-30 19:54:53 · 286 阅读 · 0 评论 -
Java中I/O流的概述和分类--初识IO流
Java中I/O操作主要是指java.io包下的内容,进行输入输出操作输入也叫读取数据输出也叫写出数据所有软件的执行都要在内存中运行内存:临时存储i:input输入(读取):把硬盘中的数据,读取到内存中使用o:output 输出(写入):把内存中的数据,写入到硬盘中保存流:数据(字符,字节)1个字符=2个字节 1个字节=8个二进制位...原创 2020-11-30 19:50:14 · 206 阅读 · 0 评论 -
Java中使用过滤器时用匿名内部类判断目录中是否有.jpg文件
可以用实现类完成过滤器过滤规则的编写也可以直接使用匿名内部类Java中使用过滤器时用匿名内部类判断目录中是否有.jpg文件方法一:package com.baidu.demoFilter;import java.io.File;import java.io.FileFilter;public class DemoFilter02 { public static void main(String[] args) { File file = new Fi.原创 2020-11-30 18:52:29 · 222 阅读 · 0 评论 -
Java中过滤器自定义过滤规则图文分析
在File类中有两个和ListFiles重载的方法,方法的参数传递的是过滤器File[] listFiles(FileFilterfilter) 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。 File[] listFiles(FilenameFilterfilter) 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。 第一个:Fil...原创 2020-11-30 18:10:05 · 1338 阅读 · 0 评论 -
Java中实现只要.jpg结尾的文件代码
Java中实现只要.java结尾的文件代码package com.baidu;import java.io.File;public class FindMou1File { public static void main(String[] args) { File file = new File("F:\\develop"); getAllFile(file); } public static void getAllFile(File .原创 2020-11-30 15:32:50 · 485 阅读 · 0 评论 -
Java中使用递归打印多级目录代码
递归打印多级目录遍历F:\develop目录下的文件or文件夹listFiles()方法public File[] listFiles() { String[] ss = list(); if (ss == null) return null; int n = ss.length; File[] fs = new File[n]; for (int i = 0; i < n; i++) {原创 2020-11-30 15:11:59 · 220 阅读 · 0 评论 -
Java中递归求阶乘代码实现
阶乘:所有小于及等于该数的正整数的积n的阶乘:n!=n * (n-1) * ...*3 * 2 * 1另一种写法n!=n *(n-1)!递归求阶乘代码:明确递归结束的条件和递归的目的package com.baidu;public class ChengJieCheng { public static void main(String[] args) { System.out.println(jiecheng(5)); } pub.原创 2020-11-30 14:33:41 · 380 阅读 · 0 评论 -
Java递归计算1-100之间的的和 分析方法体的在栈内存中的压栈(入栈)和弹栈
使用递归计算1-n之间的和定义一个方法,使用递归计算1-n之间的和已知:最大值:n最小值:1计算:1+2+3+...+(n-1)+n=?????使用递归的明确条件1、递归的结束条件 获取到1的时候结束2、递归的目的 获取下一个被加的数字(n-1)使用递归计算1-100的累加值代码:package com.baidu;public class SumDecursion { public static...原创 2020-11-30 14:06:54 · 678 阅读 · 0 评论 -
Java中递归的概念-浅谈栈内存溢出现象-递归的使用
递归:方法定义中调用方法本身的现象递归的分类分为2种:直接递归称为方法自身调用自己 间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法注意事项:递归一定要有条件限定,保证递归能够停止下来,否则就会发生栈内存溢出 在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出 构造方法禁止递归递归的使用前提: 当调用方法的时候,方法的主体不变,每次调用方法的参数不同,可以使用递归只有方法没有new对象,只有栈内存,没有堆内存浅谈栈内存溢出--递归..原创 2020-11-29 20:44:36 · 1171 阅读 · 0 评论 -
Java中File类遍历所有文件or文件夹的方法- String[] list()和 File[] listFiles() 用法示例代码
String[] list() 返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。 File[] listFiles() 返回一个抽象路径名数组,表示由该抽象路径名表示的目录中的文件。 list和listFile方法遍历的是构造方法中给出的目录 如果构造方法中给出的路径目录不存在,会抛出空指针异常 如果构造方法中给出的路径不是一个目录,也会抛出空指针异常 遍历能获取隐藏的文件和文件夹package c...原创 2020-11-29 20:02:37 · 723 阅读 · 0 评论