您现在的位置是:主页 > news > 如何做交友网站/百家号seo
如何做交友网站/百家号seo
admin2025/4/30 14:35:51【news】
简介如何做交友网站,百家号seo,自己做网站系统首选平台,如何做网站词库1.File 文件类 文件后缀(文件扩展名): .txt文本格式 .exe可执行的应用程序 .pdf 文本 .java .class 压缩文件:.jar .zip .rar 配置文件: .log .xml .properties ————————————————————————…
1.File 文件类
文件后缀(文件扩展名):
.txt文本格式
.exe可执行的应用程序
.pdf 文本
.java .class
压缩文件:.jar .zip .rar
配置文件: .log .xml .properties
——————————————————————————————————-------------------------------
目录/文件夹(diretory):文件夹里面可以存储文件、文件夹
文件(file):带有文件扩展名
绝对路径:从根文件夹开始的路径(path),windows系统一般根文件夹为系统盘,例如C:/
Linux系统一般以root作为根文件夹\root
相对路径:从当前文件夹开始的路径,在Java中,当前文件夹自己判断
1.1 对象实例化格式: File 对象名称=new File(路径名); //此处路径名为对象默认指定的初始路径
1.2 按对象指定路径创建文件: 对象名称.creatNewFile();
1.3 按对象指定路径创建目录(文件夹):
对象名称.mkdir();//只创建一层文件夹
对象名称.mkdirs();//可以创建多层文件夹
1.4 删除对象指定路径的文件/目录:
对象名称.delete();-----慎用,建议使用U盘练习
1.5 修改对象指定路径文件/目录名:
对象名称.renameTo(新的文件对象);
1.5 递归调用:方法调用自己本身
1.6 递归调用遍历所有文件
2.IO流(大部分在java.io.*)
按存储方式分为字节流(按字节的方式进行读写,容易出现乱码)和字符流(按字符的方式读写)
按读写过程分为输入流(读到项目中)和输出流(写到项目外)
其他的分类:按操作的内容:数据流、对象流、文件流
2.1字节流
抽象类InputStream 外部(如指定文件资源)-->内部(如Myeclipse自定义的数组)
read方法(Myeclipse去读取指定位置的资源) 输入流 向MyEclipse输入
抽象类OutputStream 内部(如Myeclipse自定义的字节流数组)--->外部(如指定文件资源)
write方法(Myeclipse将资源写入指定位置) 输出流 从MyEclipse输出
2.2字符流
抽象类Reader 输入流
抽象类Writer 输出流
2.3 IO流操作文件的流程
a.File类指定待操作的文件路径
b.FileInputStream/FileOutputStream 指定输入/输出流输入/输出的指定路径
c.流读/写操作 read() write()
d.关闭流 close()
2.4 字节流与字符流的区别:
a.字节流没有缓冲区域,直接对文件进行操作(即使不关闭流也会输出内容)
1字节byte=8位bit 位是计算机最小的存储单元 1字符char=2字节byte
b.字符流首先将字节流转换成字符流存在缓冲区域,然后再通过缓冲区域对文件进行操作
(字符流必须关闭流或刷新缓存才会将缓存区的内容输出)
c.所有的文件在硬盘或者传输时都是以字节的方式进行的,而字符只在内存中形成(例如缓冲区域),
所以在开发时使用字节流会好一些
d.字节流可以适用于图片、音频等;字符流只能处理字符及字符串
e.若一个文件资源需要被频繁读取的话可以使用字符流,将资源存入缓冲区中,
因为读取内存的速度相对于读取硬盘的速度会更快
2.5 使用流复制文件:
2.5.1 不带缓存
int tmp=0;
while((tmp=is.read()!=-1){ //边读边写 is为输入流对象 os为输出流对象
os.write(tmp);
}
2.5.2 有缓存
byte[] b=new byte[len]; //len为缓冲存储字节数
int tmp;
while((tmp=is.read(b)!=-1){
os.write(b,0,tmp);//读多少个字节就写多少个字节
}
读到的内容:12345 78 字节数组b:12345 78345 os.write(b)写出来:12345 78345
os.write(b,0,tmp)写出来:12345 78
2.6字节与字符的转换流:(了解)
InputStreamReader 抽象类Reader的子类,将输入的字节流转换为字符流
OutputStreamReader 抽象类Writer的子类,将输出的字符流转换为字节流
2.7 打印流(输出流OutputStream的子类)(了解)
PrintStream
PrintWriter
2.8 System类常量(了解)
System.in 输入流InputStream 系统标准输入,一般对应键盘输入 Scanner scan=new Scanner(System.in)
System.out 打印流PrintStream 系统标准输出,一般对应显示器 打印出来给客户看
System.err 打印流PrintStream 错误信息输出 打印出来给程序员看
setIn() setOut() setErr()
2.9 压缩流 java.util.*包下面 (了解) 压缩成.zip格式
ZipInputStream 将压缩文件解压输入应用程序中
ZipOutputStream 将文件压缩输出到应用程序外
ZipEntry 表示压缩包文件条目
ZipFile 从Zip文件读取条目
比较压缩效率(空间) 压缩时间(时间)
注意:每处理完一条条目时需要关闭当前条目,避免出现数据丢包的异常
java.util包下的压缩流限定使用UTF-8格式读写,若想更改编码读写格式,可以导入jar包:ant-1.6.5.jar
使用org,apache.tools.zip.*下的类进行压缩流操作
2.10 对象流 ObjectInputStream ObjectOutputStream
a.对象流只能对支持 java.io.Serializable 或
java.io.Externalizable(作用类似于关键字transient,可过滤序列化的属性) 接口的对象进行操作。
b.序列化:就是将对象转为字节流的过程,可以永久的保存在文件中。
c.反序列化:将字节流数据还原成对象的过程
d.可序列化的对象必须实现接口Serializable
e.可使用关键字transient禁止某一个对象属性序列化
f.对象流写入对象时有一个默认的方法去写表头,表示写入的是对象的数据
writeStreamHeader(); 写表头的方法 调用ObjectOutputStream构造方法时自动调用
一个存储对象字节流的文件只能有一个表头;
对多个对象进行序列化时需要重写writeStreamHeader()方法,
重写后的方法不需要执行任何操作(空实现)
注意:若反序列化的JDK版本与序列化版本不一致,可能会出现不兼容的问题,一般建议
在序列化时注明JDK版本号,即在实体类中增加常量serialVersionUID
2.11 MVC三层设计模式
com.pojo 实体层 存放对象模型(图纸)
com.biz 业务接口 一般定义增删改查的方法
com.dao 业务层 实现接口逻辑 实现增删改查
com.view 视图层 展示结果
2.12 BufferedReader 从缓冲区读取文本数据
BufferedWriter 将文本数据写入缓冲区
通常作为字符流的包装流使用,提高读写效率
2.13 字符编码: Charset
ISO8859-1 单字节编码 0-255个字符 适用于英文
GBK/GB2312 双字节编码 专门表示汉字 GBK简繁体通用 GB2312只适用于简体字
unicode 使用十六进制编码(双字节),java标准编码(JVM可以直接识别的编码),与 ISO8859-1不兼容
UTF 不定长编码,1-6个字节不等 兼容ISO8859-1 一般中文网页使用此编码
UTF-8可以适用于英文与中文,一般编码习惯使用UTF-8
一般类开放改变编码格式,方法一般命名为:setEncoder() setCharset()
URLEncoder.encoder(String str,String charsetName)字符编码,将字符串按指定的字符集编码格式转为一系列的数字编码
URLDeCoder.decoder(String str,String charsetName)解码。将一系列的数字编码按指定的字符集编码格式转为字符串
获取本机编码的方法:System.getProperty("file.encoding")
字符串设定编码的方法:String.getBytes(String charsetName) //参数为设定的编码名