通过学习一些经典案例来复习基础

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

RandomAccessFile类

含义和使用场景:随机访问数据的一个类,可以跳转到任意位置来进行数据读写;

常用方法:

RandomAccessFile类为用户提供了两种构造方法:

1、RandomAccessFile(File file, String mode)    // File指代文件,mode是指可以操作的状态,分别是r w  rw...表示读写;

2、RandomAccessFile(String name, String mode) //name指代文件名

eg:

RandomAccessFile raf0 = new RandomAccessFile("D:/employee.txt", "rw");

void close(): 关闭文件访问流,及其相关的系统资源;

int read():在此文件中读取一个数据字节;

int read(byte[] b): 按字节读取,并返回到字节数,若到末尾则返回-1;

void seek(long pos): 重要,设置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作;

.........

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

public byte[] getBytes(Charset charset):使用给定的字符集的字节序列将此String解码,并将结果存储到一个新的字节数组。

eg:

package ts;

import java.io.UnsupportedEncodingException;

public class test2 {
public static void main(String[] args) throws UnsupportedEncodingException {
String s = "浣犲ソ"; //"你好"的gbk编码的字符串
String ss = new String(s.getBytes("GBK"), "UTF-8");
String sss = new String(s.getBytes("gbk"));
String s4=new String(s.getBytes("UTF-8"));
System.out.println(ss);
System.out.println(sss);
System.out.println(s4);
}
}
//对字符串按照 charsetName 进行编码(unicode→charsetName),返回编码后的字节。
//getBytes() 表示按照系统默认编码方式进行。 //你好 //你好
//浣犲ソ

 数组扩容

Arrays.copyOf(原始数组,数组的新长度);

package ts;
import java.util.Arrays; public class test {
public static void main(String[] args) {
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = Arrays.copyOf(arr1, 5);
int[] arr3 = Arrays.copyOf(arr1, 6);
for(int i = 0; i < arr2.length; i++)
System.out.print(arr2[i] + " ");
System.out.println();
for(int i = 0; i < arr3.length; i++)
System.out.print(arr3[i] + " ");
}
}

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

File类

常用api :创建文件、删除文件、判断、获取文件相关消息;

IO流之RandomAccessFile和File的更多相关文章

  1. IO流基础,创建File对象与方法是用

    1.io流主要用途读取本地文件或服务器文件,进行本地或者服务器开呗工作 构造函数   绝对路径够构造方法:    File f = new File("D:\\test\\a.txt&quo ...

  2. java IO流 (一) File类的使用

    1.File类的理解* 1. File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹)* 2. File类声明在java.io包下* 3. File类中涉及到关于文件或文件目录的创建.删除.重 ...

  3. 【Java IO流】RandomAccessFile类的使用

    RandomAccessFile类的使用 RandomAccessFile类是java提供的对文件内容的访问,既可以读文件,也可以写文件. 支持随机访问文件,可以访问文件的任意位置. RandomAc ...

  4. JAVA学习第五十二课 — IO流(六)File对象

    File类 用来给文件或者目录封装成对象 方便对文件与目录的属性信息进行操作 File对象能够作为參数传递给流的构造函数 一.构造函数和分隔符 public static void FileDemo( ...

  5. Java基础知识强化之IO流笔记10:File类输出指定目录下指定后缀名的文件名称案例(File类的文件过滤器方法改进list( FilenameFilter ff))

    1. 案例: 判断F盘下是否有后缀名为.jpg的文件,如果有的话,就输出这个文件名. 2. 案例代码如下: (1)思路是:先获取所有的文件和文件夹封装的对象,然后遍历的时候,依次判断,如果满足条件就输 ...

  6. [javaSE] IO流(RandomAccessFile)

    随机访问文件,可以看作一个大型的byte[]数组,不算是IO体系中的一员,内部封装了字节输入输出流,可以设置权限,可以调整指针的位置 获取RandomAccessFile对象,构造参数:String文 ...

  7. IO流(一)File类

    1.File类:表示文件和目录路径的抽象的表示形式,可以实现文件的创建,删除,重命名等,是唯一与文件本 有关的操作类. 2.File类的API定义:public class File extends ...

  8. Java基础知识强化之IO流笔记09:File类功能

    详见如下: Android(java)学习笔记87:File类使用

  9. IO流(1)File类构造方法

    构造方法: * File(String pathname):根据一个路径得到File对象 * File(String parent, String child):根据一个目录和一个子文件/目录得到Fi ...

随机推荐

  1. goroutine 分析 协程的调度和执行顺序 并发写

    package main import ( "fmt" "runtime" "sync" ) const N = 26 func main( ...

  2. How to derive mean and variance of a Gaussian?

    PRML exercise 1.8: To derive mean: change of variable z = x - u, use symmetry To derive variance: di ...

  3. AtomicInteger 源码分析

    AtomicInteger AtomicInteger 能解决什么问题?什么时候使用 AtomicInteger? 支持原子更新的 int 值. 如何使用 AtomicInteger? 1)需要被多线 ...

  4. SpringBoot设置SORS的几种方式

    1. 原生支持 Application 启动类添加以下代码: import org.springframework.context.annotation.Bean;import org.springf ...

  5. django小知识

    def __str__: return self.name 在显示的时候,将原来显示的额object对象,显示成这个类的名字

  6. 解决Nginx反向代理不会自动对特殊字符进行编码的问题 如gitblit中的~波浪线

    问题起因是利用Nginx做反向代理的时候,需要访问如下链接http://192.168.14.141/iserver/services/3D-0524hd/rest/realspace/datas/0 ...

  7. dict用法

    1 dict.items() https://www.runoob.com/python3/python3-att-dictionary-items.html 2 setdefault的用法 注意se ...

  8. centos 7 lnmp环境编译安装zabbix-3.4.14

    一.安装环境(zabbix3.0需要php在5.5版本以上) [root@localhost ~]# cat /etc/redhat-release CentOS Linux release (Cor ...

  9. (136)leetcode刷题Python笔记——只出现一次的数字

    题目如下: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: ...

  10. 如何创建Windows虚拟机

    Windows虚拟机搭建 第1步:运行"Vmware WorkStation",看到主页面,创建新的虚拟机 第2步:新建虚拟机向导——典型(推荐) 第3步:选择光盘映像文件 第4步 ...