文件
1.Java把文件和目录都当做是文件。文件类是File类。
2.目录分割符的写法:
1)c:\\haha\\hehe\\a.txt
2)c:/haha/hehe/a.txt
3)"c:"+File.separator+"haha"+File.separator+"a.txt" //推荐这种写法
3.File常用的基本方法
createNewFile 创建文件,不是目录
mkdir 创建单层目录,必须要求父目录存在
mkdirs 创建多层目录。
exists: 是否存在
isDirectory() :是否是目录
isFile() :是否是文件
list(); //文件名数组
listFile(); //文件数组
---------------------------------
过滤器
文件名过滤
文件过滤器
-----------------------------------
c:\java_lesson\file\test.txt
c:\java_lesson\file\ 目录
test.txt 文件
------------------------------------------------------------------
File类
文件和目录统称为文件。
1.常用的构造方法。
new File(String file);
c:\\test
c:/test
c:File.sparator
new File(File parent,String name);
new File(String parent,String name);
exist();
isFile();
isDirectory();
createNewFile();
mkdir(); //要求父目录必须存在。
mkdirs(); //创建多层目录。
length(); //单位:字节。
list(); //文件名字的集合 FileFilter FilenameFilter
listFile(); //文件的集合
delete
deleteOnExit
...
文件读写
掌握JavaIO流。
输入流/输出流
InputStream/OutputStream : 按照字节读取文件。 字节流是万能的。
字节流/字符流
Reader/Writer :按照字符去读取文件(每读两字节) --》和系统中字符编码对照,看看有没有响应字符编码。
假设去拿字符流去读一个字节文件。 -1
千万不要拿字符流去读取字节文件,读出来的结果不对的。
Reader reader = new InputStreamReader(in,"charset"); //厉害了。。。。。
按行读,读字符串。
----------------------------------------------------------------------------
常见的字节文件:执行文件(*.exe,*.com,*.dll,),(*.jpg,*.bmp,*.jpeg,*.gif,*.png,*.ico,*.psd...)
视频(*.avi,*.mpg,*.mpeg,*.wmv,*.mp4,*.3pg,*.mov,*.rmvb,*.dat,*.flv,*.mkv,*.vod,..)
音频(*.mp3,*.wav,*.mid,*.rm,*.ape),*.doc,*.class
常见的字符文件:(*.txt,*.html,*.css,*.js,*.java,*.c,*.cpp,*.xml,*.ini,...)
-----------------------------------------------------------------------------
InputStream 抽象类:FileInputStream / BufferedInputStream
缓冲区: 内存里的一块临时区域。
3.对象序列化/反序列化
内存中对象保存到磁盘或者流中。存盘
把磁盘或者流中的数据恢复成内存中对象。读取进度。
------------------------------------------------------------------------------
4.properties的文档字符编码一定是utf-8的。里面的中文显示都是unicode编码。
5.JDK5之后出现的新IO,新IO就是指管道流。
输入管道--》输入流
网络编程
1.IP地址
IPV4:4个字节,32位。4294967296,42亿个。70亿,IPV4地址很枯竭了,不够用。
127.0.0.1 回路地址,本机地址。 localhost
网络编号+地址编号
----------------------------------
A
B
C
D
E
IPV6:16个字节, 128位。宇宙大的数字,每个人的头发丝分配一个都用不完。
2.域名
http://www.sina.com.cn/
DNS:Domain Name Service,域名解析服务。
www.sina.com.cn --->ip--->mac
3.OSI七层模型 TCP/IP
应用 http,smtp,pop3,ftp,https,...
表示 APP
会话层
---------------------------------------
传输层 TCP/UDP
---------------------------------------- 透明的
网络层 IP ARP RARP
----------------------------------------
数据链路层 物理层 802.11B 无线网,Bluebooth,...
物理层 以太网 双绞线(网线)
接口 实现类
TCP/IP implements OSI{
}
TCP/IP 协议簇
IP: Internet Protocol , 负责路由。网络层。
TCP:Transport Control Protocol, 传输控制协议。负责端到端可靠连接。传输层
-----------------------------------------------------------
TCP:可靠的,面向连接的。三次握手,可靠的通信信道。成本高。
socket:套接字, ip+port 127.0.0.1:8080,一个套接字表示一个服务(Service)。
port:占用几个字节,两个字节。0-65535.
1024以内,系统端口号,不允许分配给用户使用。
80: www
21:
25
110
...
UDP:不可靠,面向无连接。发送数据包(报) datagram,成本低。几乎为零。
打电话:面向连接,可靠的,建立通信信道。
发短信:面向无连接,发送数据包。