您现在的位置是:主页 > news > 东莞做网站需要多少钱/推广方案流程

东莞做网站需要多少钱/推广方案流程

admin2025/4/29 20:54:08news

简介东莞做网站需要多少钱,推广方案流程,常州网站建设最易,网站建设详细教程视频Java IO篇1. File类1.1 File类常见方法:创建。删除判断。获取信息。1.2 递归2. Properties3. 打印流3.1 字节打印流PrintStream3.2 字符打印流PrintWriter4. 对象序列化4.1 ObjectOutputStream4.2 ObjectInputStream5. 管道流6. 随机读写 RandomAccessFile7. 操作基…

东莞做网站需要多少钱,推广方案流程,常州网站建设最易,网站建设详细教程视频Java IO篇1. File类1.1 File类常见方法:创建。删除判断。获取信息。1.2 递归2. Properties3. 打印流3.1 字节打印流PrintStream3.2 字符打印流PrintWriter4. 对象序列化4.1 ObjectOutputStream4.2 ObjectInputStream5. 管道流6. 随机读写 RandomAccessFile7. 操作基…

Java IO篇

  • 1. File类
    • 1.1 File类常见方法:
      • 创建。
      • 删除
      • 判断。
      • 获取信息。
    • 1.2 递归
  • 2. Properties
  • 3. 打印流
    • 3.1 字节打印流PrintStream
    • 3.2 字符打印流PrintWriter
  • 4. 对象序列化
    • 4.1 ObjectOutputStream
    • 4.2 ObjectInputStream
  • 5. 管道流
  • 6. 随机读写 RandomAccessFile
  • 7. 操作基本数据类型的流
  • 8. 操作字节数组的流
  • 9. 字符编码
    • 9.1 码表

1. File类

用来将文件或者文件夹路径封装成对象,方便对文件与文件夹进行操作。File对象可以作为参数传递给流的构造函数。

1.1 File类常见方法:

创建。

  • boolean createNewFile():在指定位置创建文件,如果该文件已经存在,则不创建,返回false。和输出流不一样,输出流对象一建立创建文件。而且文件已经存在,会覆盖。
  • boolean mkdir():创建文件夹。
  • boolean mkdirs():创建多级文件夹。

删除

  • boolean delete():删除失败返回false。如果文件正在被使用,则删除不了返回false。
  • void deleteOnExit();在程序退出时删除指定文件。

判断。

  • boolean exists() :文件是否存在.
  • isFile():
  • isDirectory();
  • isHidden();
  • isHidden();

获取信息。

  • getName():
  • getPath():
  • getParent():
  • getAbsolutePath()
  • long lastModified()
  • long length()

1.2 递归

  • 函数自己调用自己。
  • 注意:递归时一定要明确结束条件。
  • 应用场景:
    • 当某一功能要重复使用时。

2. Properties

PropertiesHashtable的子类,也就是说它具备map集合的特点。而且它里面存储的键值对都是字符串。是集合中和IO技术相结合的集合容器。
该对象的特点:可以用于键值对形式的配置文件。那么在加载数据时,需要数据有固定格式:键=值。

3. 打印流

该流提供了打印方法,可以将各种数据类型的数据都原样打印。

3.1 字节打印流PrintStream

构造函数可以接收的参数类型:

  • file对象。File
  • 字符串路径。String
  • 字节输出流。OutputStream

3.2 字符打印流PrintWriter

构造函数可以接收的参数类型:

  • file对象。File
  • 字符串路径。String
  • 字节输出流。OutputStream
  • 字符输出流,Writer。

4. 对象序列化

4.1 ObjectOutputStream

可以将实现了Serializable的接口的对象转成字节写出到流中

4.2 ObjectInputStream

可以从流中读取一个ObjectOutputStream流写出的对象

5. 管道流

PipedInputStream:管道输入流,可以从管道输出流中读取数据
PipedOutputStream:管道输出流,可以向管道输入流中写出数据

在建立管道输出流时可以在构造方法中将管道输入流传入,或者用connect()方法将输入输出流接上,
建议:输出与输入在两个不同的线程进行操作

6. 随机读写 RandomAccessFile

该类不是算是IO体系中子类。而是直接继承自Object。

7. 操作基本数据类型的流

DataInputStreamDataOutputStream,可以按照基本数据类型占用空间大小读写数据

8. 操作字节数组的流

  • ByteArrayOutputStream: 写出到字节数组(内存)中,可以获取写出的内容装入一个字节数组。通常我们用这个流来缓冲数据。
  • ByteArrayInputStream:可以从一个字节数组中读取字节
  • CharArrayWriter:写出字符到字符数组(内存)中,可以获取写出的内容装入一个字符数组。
  • CharArrayReader:可以从一个字符数组中读取字符。

用于操作字节数组的流对象。

  • ByteArrayInputStream :在构造的时候,需要接收数据源,。而且数据源是一个字节数组。
  • ByteArrayOutputStream: 在构造的时候,不用定义数据目的,因为该对象中已经内部封装了可变长度的字节数组。
/*字节数组输入流 ByteArrayInputStream
*
*
* */
public class Demo5 {public static void main(String[] args) throws IOException {byte[] bytes = "hello world!".getBytes();InputStream byteArrayInputStream = new ByteArrayInputStream(bytes);  //发生多态  继承,重写,父类的引用指向子类byte[] bytes1 = new byte[1024];int  temp;while((temp=byteArrayInputStream.read(bytes1,0,bytes1.length))!=-1){String str = new String(bytes1,0,temp);System.out.println(str);}}
}
/*字节数组输出流 ByteArrayOutpurStream
*
*
* */
public class Demo6 {public static void main(String[] args) throws IOException {ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();//创建一个新的 byte 数组输出流。byte[] data="hello world!世界".getBytes();arrayOutputStream.write(data);byte[] bytes = arrayOutputStream.toByteArray();System.out.println(bytes.length+"----"+new String(bytes));byte[] s = new String("世界你好").getBytes();System.out.println(s.length+"---"+new String(s));}
}

9. 字符编码

9.1 码表

ASCII:英文码表,每个字符占1个字节。A是65,a是97
GB2312:兼容ASCII,包含中文,每个英文占1个字节(正数),中文占2个字节(2个负数)。
GBK:兼容GB2312,包含更多中文,每个英文占1个字节(正数),中文占2个字节(第一个负数、第二个可正可负)。
Unicode:国际码表,每个字符占2个字节。Java中存储字符类型就是使用的Unicode编码。
UTF-8:国际码表,英文占1个字节,中文占3个字节。

java提供了StandardCharsets类
在这里插入图片描述