T6 s1 day19
**********************************************************************
IO流
**********************************************************************
回顧:
1、Java異常處理機制
try-cach-finally throw -throws
執行過程
兩種異常
運行時異常
checked異常
常見的異常類型都有哪些:
自定義異常 繼承Exception
2、工具類
String:charAt() split(",") length() subString() replace indexOf
String str="abc"; 不可變字符串
str=str+"def";
System.out.println(str); //String 重寫了Object中toString()方法
StringBuffer append追加
StringBuilder 非線程安全,效率更高
Math類 數學方法
Date SimpleDateFormat yyyy MM dd hh mm ss SSS
Calendar 日歷
Arrays sort() binarySearch() toString
調試debug
【注意】方法的參數是基本類型和引用類型的區別
Java集合框架:
1、圖譜 接口 實現類
2、每種集合存放數據的特點
ArrayList 非線程安全 效率高
Vector 線程安全
ArrayList LinkedList區別
Set:無序 唯一 add()方法時
key-value Map HashMap LinkedHashMap
遍歷集合:
1、Set keys=集合.keySet();
2、Set entry=集合.entrySet(); 迭代器
3、foreach
4、for
今日內容:
1、文件內容的讀寫
字節流
字符流完成
流:程序和文件之間的通道
字節流:通道里流動的是字節 byte
InputStream 接口 FileInputStream 實現類 輸入字節流
OutputStream 接口 FileOutputStream 實現類 輸出字節流
字符流: 字符 char
如何通過字節流的方式進行文件的讀寫:
文件讀取操作方式:
1、逐個字節讀取 一次讀取一個
2、讀入一個字節數組 批量讀,每次讀取數組長度個
原理:FileInputStream 有個position指針,記錄當前讀取的位置
默認在文件開始,讀取一個字節后,postition向后移動一字節,最后讀取到的是-1
字符流
以字符為單位在流通道中傳輸
FileReader類 字符輸入流
提升讀取效率:緩沖的讀寫
BufferedWriter 是 FileWriter 子類 提供了逐行寫入功能
BufferedReader 是 FileReader 子類 提供了逐行讀取功能
BufferedDemo
作業1:
DBConfig.conf
db:{ip}
dbname:{dname}
username:{uname}
pwd:{pwd}
讓用戶輸入對應的信息,接收后
寫入到對應的位置
擴展:
1、讀取二進制文件
2、阻塞IO 效率低
NIO 非阻塞IO
1、讀取二進制文件
IO流操作 是阻塞的,當一個流沒有完成操作后,另一個流操作無法進行。
阻塞的IO:效率低
NIO:非阻塞的IO流
緩沖區
總結:
File類
流:通道
FileInputStream
FileOutputStream
FileReader
FileWriter
BufferedReader
BufferedWriter
二進制
轉載于:https://www.cnblogs.com/wxcsz/p/10712248.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的T6 s1 day19的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 结队开发之NABCD
- 下一篇: 7.1使用Request获取HTTP请求