IO流使用基礎知識
IO流
IO流概述及分類
IO流用來處理裝置之間的資料傳輸
Java對資料的操作是通過流的方式
Java用於操作流的類都在IO包中
流按流向分為兩種:輸入流,輸出流
FileWriter類使用
FileWriter向檔案中寫資料
A:FileWriter向檔案中寫資料操作步驟:
a:使用FileWriter流關聯檔案
b:利用FileWriter的寫方法寫資料
c:利用FileWriter的重新整理方法將資料從記憶體刷到硬碟上
d:利用FileWriter的關流方法將釋放佔用的系統底層資源
B:FileWriter方法:
構造方法
FileWriter(String fileName) 傳入一個檔案的路徑
成員方法
void write(String str) 向檔案中寫str
void flush() 將記憶體中的資料重新整理到檔案中
void close() 關流釋放系統底層資源
案例程式碼一:
import java.io.FileWriter; import java.io.IOException; /* * 需求:往檔案中寫資料 * 寫資料--輸出流--FileWriter * * FileWriter: * FileWriter(String fileName):傳遞一個檔名稱 * * 輸出流寫資料的步驟: * A:建立輸出流物件 * B:呼叫輸出流物件的寫資料的方法 * C:釋放資源 */ public class FileWriterDemo { public static void main(String[] args) throws IOException { //建立輸出流物件 FileWriter fw = new FileWriter("d:\\a.txt"); /* * 建立輸出流物件做了哪些事情: * A:呼叫系統資源建立了一個檔案 * B:建立輸出流物件 * C:把輸出流物件指向檔案 */ //呼叫輸出流物件的寫資料的方法 //寫一個字串資料 fw.write("IO流你好"); //資料沒有直接寫到檔案,其實是寫到了記憶體緩衝區 fw.flush(); //釋放資源 //通知系統釋放和該檔案相關的資源 fw.close(); //while(true) {} } }
FileWriter注意事項
案例程式碼二:
import java.io.FileWriter; import java.io.IOException; /* * 輸出流寫資料的步驟: * A:建立輸出流物件 * B:呼叫輸出流物件的寫資料方法,並重新整理緩衝區 * C:釋放資源 * * 相對路徑:相對當前專案而言的,在專案的根目錄下(a.txt) * 絕對路徑:以碟符開始的路徑(d:\\a.txt) * * close()和flush()方法的區別: * flush():重新整理緩衝區。流物件還可以繼續使用。 * close():先重新整理緩衝區,然後通知系統釋放資源。流物件不可以再被使用了。 */ public class FileWriterDemo2 { public static void main(String[] args) throws IOException { //建立輸出流物件 //FileWriter fw = new FileWriter("d:\\a.txt"); FileWriter fw = new FileWriter("a.txt"); //呼叫輸出流物件的寫資料方法,並重新整理緩衝區 fw.write("helloworld"); fw.flush(); fw.write("java"); fw.flush(); //釋放資源 fw.close(); //Stream closed //fw.write("javaee"); //fw.flush(); } }
FileWriter其它寫方法
void write(String str):寫一個字串資料
void write(String str,int index,int len):寫一個字串中的一部分資料
void write(int ch):寫一個字元資料,這裡寫int型別的好處是既可以寫char型別的資料,也可以寫char對應的int型別的值。'a',97
void write(char[] chs):寫一個字元陣列資料
void write(char[] chs,int index,int len):寫一個字元陣列的一部分資料
案例程式碼三:
import java.io.FileWriter;
import java.io.IOException;
/*
* void write(String str):寫一個字串資料
* void write(String str,int index,int len):寫一個字串中的一部分資料
* void write(int ch):寫一個字元資料,這裡寫int型別的好處是既可以寫char型別的資料,也可以寫char對應的int型別的值。'a',97
* void write(char[] chs):寫一個字元陣列資料
* void write(char[] chs,int index,int len):寫一個字元陣列的一部分資料
*/
public class FileWriterDemo3 {
public static void main(String[] args) throws IOException {
//建立輸出流物件
FileWriter fw = new FileWriter("b.txt");
//void write(String str):寫一個字串資料
//fw.write("abcde");
//void write(String str,int index,int len):寫一個字串中的一部分資料
//fw.write("abcde",0,5);
//fw.write("abcde",1,3);
//void write(int ch):寫一個字元資料,這裡寫int型別的好處是既可以寫char型別的資料,也可以寫char對應的int型別的值。'a',97
//fw.write('a');
//fw.write(97);
//void write(char[] chs):寫一個字元陣列資料
char[] chs = {'a', 'b', 'c', 'd', 'e'};
//fw.write(chs);
//void write(char[] chs,int index,int len):寫一個字元陣列的一部分資料
//fw.write(chs,0,5);
fw.write(chs, 2, 3);
//釋放資源
fw.close();
}
}
FileWriter寫入換行以及向文字末尾追加
案例程式碼四:
import java.io.FileWriter;
import java.io.IOException;
/*
* 如何實現資料的換行?
* \n可以實現換行,但是windows系統自帶的記事本開啟並沒有換行,這是為什麼呢?因為windows識別的換行不是\n,而是\r\n
* windows:\r\n
* linux:\n
* mac:\r
* 如何實現資料的追加寫入?
* FileWriter(String fileName, boolean append)
*/
public class FileWriterDemo4 {
public static void main(String[] args) throws IOException {
//建立輸出流物件
//FileWriter fw = new FileWriter("c.txt");
FileWriter fw = new FileWriter("c.txt", true); //表示追加寫入,預設是false
for (int x = 0; x < 10; x++) {
fw.write("hello" + x);
fw.write("\r\n");
}
//釋放資源
fw.close();
}
}
- FileReader類使用
- FileReader類使用
FileReader類使用
FileReader讀資料一次讀取一個字元
案例程式碼五:
import java.io.FileReader;
import java.io.IOException;
/*
* 需求:從檔案中讀資料並顯示到控制檯
* 讀資料--輸入流--FileReader
*
* FileReader:
* FileReader(String fileName):傳遞檔名稱
*
* 輸入流讀檔案的步驟:
* A:建立輸入流物件
* B:呼叫輸入流物件的讀資料方法
* C:釋放資源
*
* java.io.FileNotFoundException: fr.txt (系統找不到指定的檔案。)
*/
public class FileReaderDemo {
public static void main(String[] args) throws IOException {
//建立輸入流物件
// FileReader fr = new FileReader("fr.txt");
FileReader fr = new FileReader("FileWriterDemo.java");
//呼叫輸入流物件的讀資料方法
//int read():一次讀取一個字元
/*
//第一次讀資料
int ch = fr.read();
System.out.println(ch);
System.out.println((char)ch);
//第二次讀資料
ch = fr.read();
System.out.println(ch);
System.out.println((char)ch);
//第三次讀資料
ch = fr.read();
System.out.println(ch);
System.out.println((char)ch);
//這是時候,我們發現程式碼的重複度很高,想用迴圈改進,但是不知道迴圈的結束條件是什麼
ch = fr.read();
System.out.println(ch);
ch = fr.read();
System.out.println(ch);
//通過測試,我們知道,如果讀取資料的返回值是-1的時候,就說明沒有資料了,這也是我們迴圈的結束條件
*/
int ch;
//1:fr.read()
//2:ch=fr.read()
//3:ch != -1
while ((ch = fr.read()) != -1) {
//System.out.println(ch);
//System.out.println((char)ch);
System.out.print((char) ch);
}
//釋放資源
fr.close();
}
}
利用FileReader和FileWriter完成檔案複製
讀一次寫一次
案例程式碼六:
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 需求:
* 把專案路徑下的FileWriterDemo.java中的內容複製到專案路徑下的Copy.java中
*
* 檔案複製也是有規律可循的,也就是說有套路。
*
* 資料來源:
* FileWriterDemo.java -- 讀資料 -- FileReader
* 目的地:
* Copy.java -- 寫資料 -- FileWriter
*/
public class CopyFileDemo {
public static void main(String[] args) throws IOException {
//建立輸入流物件
FileReader fr = new FileReader("FileWriterDemo.java");
//建立輸出流物件
FileWriter fw = new FileWriter("Copy.java");
//讀寫資料
int ch;
while ((ch = fr.read()) != -1) {
fw.write(ch);
}
//釋放資源
fw.close();
fr.close();
}
}
利用字元陣列拷貝檔案
案例程式碼七:
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 需求:
* 把專案路徑下的FileWriterDemo.java中的內容複製到專案路徑下的Copy.java中
*
* 資料來源:
* FileWriterDemo.java -- 讀資料 -- FileReader
* 目的地:
* Copy.java -- 寫資料 -- FileWriter
*/
public class CopyFileDemo2 {
public static void main(String[] args) throws IOException {
//建立輸入流物件
FileReader fr = new FileReader("FileWriterDemo.java");
//建立輸出流物件
FileWriter fw = new FileWriter("Copy.java");
//讀寫資料
char[] chs = new char[1024];
int len;
while ((len = fr.read(chs)) != -1) {
fw.write(chs, 0, len);
}
//釋放資源
fw.close();
fr.close();
}
}
拷貝檔案的兩種方式圖解
緩衝流介紹和使用
緩衝流的基本使用
案例程式碼八:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
/*
* BufferedWriter:將文字寫入字元輸出流,緩衝各個字元,從而提供單個字元、陣列和字串的高效寫入。
* BufferedReader:從字元輸入流中讀取文字,緩衝各個字元,從而實現字元、陣列和行的高效讀取。
*/
public class BufferedStreamDemo {
public static void main(String[] args) throws IOException {
//建立輸出緩衝流物件
/*
BufferedWriter bw = new BufferedWriter(new FileWriter("bw.txt"));
bw.write("hello");
//bw.flush();
bw.close();
*/
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader("FileWriterDemo.java"));
/*
//一次讀寫一個字元
int ch;
while((ch=br.read())!=-1){
System.out.print((char)ch);
}
*/
//一次讀寫一個字元陣列
char[] chs = new char[1024];
int len;
while ((len = br.read(chs)) != -1) {
System.out.print(new String(chs, 0, len));
}
//釋放資源
br.close();
}
}
緩衝流複製文字檔案的兩種方式
利用緩衝流把專案路徑下的FileWriterDemo.java中的內容複製到專案路徑下的Copy.java中
第一種方式:使用緩衝流不使用字元陣列
第二種方式:使用緩衝流使用字元陣列
案例程式碼九:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 需求:
* 把專案路徑下的FileWriterDemo.java中的內容複製到專案路徑下的Copy.java中
*
* 資料來源:
* FileWriterDemo.java -- 讀資料 -- FileReader -- 高效的讀資料 -- BufferedReader
* 目的地:
* Copy.java -- 寫資料 -- FileWriter -- 高效的寫資料 -- BufferedWriter
*/
public class CopyFileDemo {
public static void main(String[] args) throws IOException {
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader("FileWriterDemo.java"));
//建立輸出緩衝流物件
BufferedWriter bw = new BufferedWriter(new FileWriter("Copy.java"));
//讀寫資料
/*
//一次讀寫一個字元
int ch;
while((ch=br.read())!=-1) {
bw.write(ch);
}
*/
//一次讀寫一個字元陣列
char[] chs = new char[1024];
int len;
while ((len = br.read(chs)) != -1) {
bw.write(chs, 0, len);
}
//釋放資源
bw.close();
br.close();
}
}
緩衝流的特有方法使用
BufferedWriter
void newLine():寫一個換行符,這個換行符由系統決定,不同的作業系統newLine()方法使用的換行符不同
windows:\r\n
linux:\n
mac:\r
BufferedReader
String readLine():一次讀取一行資料,但是不讀取換行符
案例程式碼十:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
/*
* 緩衝流的特殊功能:
* BufferedWriter
* void newLine():寫一個換行符,這個換行符由系統決定
* BufferedReader
* String readLine():一次讀取一行資料,但是不讀取換行符
*/
public class BufferedStreamDemo {
public static void main(String[] args) throws IOException {
/*
BufferedWriter bw = new BufferedWriter(new FileWriter("bw2.txt"));
for(int x=0; x<10; x++) {
bw.write("hello"+x);
//bw.write("\r\n");
bw.newLine();
bw.flush();
}
bw.close();
*/
BufferedReader br = new BufferedReader(new FileReader("br.txt"));
/*
String line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);
*/
String line;
//1:br.readLine()
//2:line=br.readLine()
//3:line != null
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
}
}
緩衝流的特有方法複製檔案
案例程式碼十一:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 需求:
* 把專案路徑下的FileWriterDemo.java中的內容複製到專案路徑下的Copy.java中
*
* 資料來源:
* FileWriterDemo.java -- 讀資料 -- FileReader -- 高效的讀資料 -- BufferedReader
* 目的地:
* Copy.java -- 寫資料 -- FileWriter -- 高效的寫資料 -- BufferedWriter
*/
public class CopyFileDemo {
public static void main(String[] args) throws IOException {
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader("FileWriterDemo.java"));
//建立輸出緩衝流物件
BufferedWriter bw = new BufferedWriter(new FileWriter("Copy.java"));
//讀寫資料
String line;
while ((line = br.readLine()) != null) {
bw.write(line);
bw.newLine();
bw.flush();
}
//釋放資源
bw.close();
br.close();
}
}
IO流相關案例
複製文字檔案的5種方式
A:利用基本流一次讀寫一個字元
B:利用基本流一次讀寫一個字元陣列
C:利用緩衝流一次讀寫一個字元
D:利用緩衝流一次讀寫一個字元陣列
E:利用緩衝流的特有方法一次讀寫一個字串
案例程式碼十二:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 複製文字檔案(5種方式)
*
* 資料來源:
* FileWriterDemo.java
* 目的地:
* Copy.java
*/
public class CopyFileTest {
public static void main(String[] args) throws IOException {
/*
method1("FileWriterDemo.java","Copy.java");
method2("FileWriterDemo.java","Copy.java");
method3("FileWriterDemo.java","Copy.java");
method4("FileWriterDemo.java","Copy.java");
method5("FileWriterDemo.java","Copy.java");
*/
String srcFileName = "FileWriterDemo.java";
String destFileName = "Copy.java";
// method1(srcFileName,destFileName);
// method2(srcFileName,destFileName);
method3(srcFileName, destFileName);
// method4(srcFileName,destFileName);
// method5(srcFileName,destFileName);
}
//緩衝流一次讀寫一個字串
public static void method5(String srcFileName, String destFileName) throws IOException {
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader(srcFileName));
//建立輸出緩衝流物件
BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
//一次讀寫一個字串
String line;
while ((line = br.readLine()) != null) {
bw.write(line);
bw.newLine();
bw.flush();
}
//釋放資源
bw.close();
br.close();
}
//緩衝流一次讀寫一個字元陣列
public static void method4(String srcFileName, String destFileName) throws IOException {
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader(srcFileName));
//建立輸出緩衝流物件
BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
//一次讀寫一個字元陣列
char[] chs = new char[1024];
int len;
while ((len = br.read(chs)) != -1) {
bw.write(chs, 0, len);
}
//釋放資源
bw.close();
br.close();
}
//緩衝流一次讀寫一個字元
public static void method3(String srcFileName, String destFileName) throws IOException {
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader(srcFileName));
//建立輸出緩衝流物件
BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
//一次讀寫一個字元
int ch;
while ((ch = br.read()) != -1) {
bw.write(ch);
}
//釋放資源
bw.close();
br.close();
}
//基本流一次讀寫一個字元陣列
public static void method2(String srcFileName, String destFileName) throws IOException {
//建立輸入流物件
FileReader fr = new FileReader(srcFileName);
//建立輸出流物件
FileWriter fw = new FileWriter(destFileName);
//一次讀寫一個字元陣列
char[] chs = new char[1024];
int len;
while ((len = fr.read(chs)) != -1) {
fw.write(chs, 0, len);
}
//釋放資源
fw.close();
fr.close();
}
//基本流一次讀寫一個字元
public static void method1(String srcFileName, String destFileName) throws IOException {
//建立輸入流物件
FileReader fr = new FileReader(srcFileName);
//建立輸出流物件
FileWriter fw = new FileWriter(destFileName);
//一次讀寫一個字元
int ch;
while ((ch = fr.read()) != -1) {
fw.write(ch);
}
//釋放資源
fw.close();
fr.close();
}
}
把集合中的資料寫到文字檔案
把ArrayList集合中的字串資料儲存到文字檔案專案根目下的array.txt中
每一個字串元素作為檔案中的一行資料
案例程式碼十三:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
/*
* 把ArrayList集合中的字串資料儲存到文字檔案
* 每一個字串元素作為檔案中的一行資料
*
* 分析:
* A:建立集合物件
* B:往集合中新增字串元素
* C:建立輸出緩衝流物件
* D:遍歷集合,得到每一個字串元素,然後把該字串元素作為資料寫到文字檔案
* E:釋放資源
*/
public class ArrayListToFileTest {
public static void main(String[] args) throws IOException {
//建立集合物件
ArrayList<String> array = new ArrayList<String>();
//往集合中新增字串元素
array.add("hello");
array.add("world");
array.add("java");
//建立輸出緩衝流物件
BufferedWriter bw = new BufferedWriter(new FileWriter("array.txt"));
//遍歷集合,得到每一個字串元素,然後把該字串元素作為資料寫到文字檔案
for (int x = 0; x < array.size(); x++) {
String s = array.get(x);
bw.write(s);
bw.newLine();
bw.flush();
}
//釋放資源
bw.close();
}
}
把文字檔案中的資料讀取到集合
從專案根目錄下的array.txt文字檔案中讀取資料到ArrayList集合中,並遍歷集合,每一行資料作為一個字串元素
案例程式碼十四:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
/*
* 從文字檔案中讀取資料到ArrayList集合中,並遍歷集合
* 每一行資料作為一個字串元素
*
* 分析:
* A:建立輸入緩衝流物件
* B:建立集合物件
* C:讀取資料,每次讀取一行資料,把該行資料作為一個元素儲存到集合中
* D:釋放資源
* E:遍歷集合
*/
public class FileToArrayListTest {
public static void main(String[] args) throws IOException {
//建立輸入緩衝流物件
BufferedReader br = new BufferedReader(new FileReader("array.txt"));
//建立集合物件
ArrayList<String> array = new ArrayList<String>();
//讀取資料,每次讀取一行資料,把該行資料作為一個元素儲存到集合中
String line;
while ((line = br.readLine()) != null) {
array.add(line);
}
//釋放資源
br.close();
//遍歷集合
for (int x = 0; x < array.size(); x++) {
String s = array.get(x);
System.out.println(s);
}
}
}
相關推薦
IO流基礎知識
&nb
Java基礎-IO流相關知識和用法
IO流 分類: 1、流向 A:輸入流:讀取資料 B:輸出流:寫入資料 2、資料型別 A:位元組流 a:位元組輸入流 :讀取資料 (抽象類的基類:InputStream) b:位元組輸出流 :寫入資料 (抽象類的基類:OutputStream) B:字元流
檔案操作與IO流基礎
檔案類File File file=new File("D:\\java\\zs2\\eatfood.txt"); if(file.isFile()){ System.out.println("是個檔案"); }
IO 流基礎
輸入流和輸出流相對於記憶體而言 下載檔案時----》【硬碟1------》記憶體1----》記憶體2-----》硬碟2】 一個字元兩個位元組 位元組流:視訊、聲音、圖片等二進位制格式檔案(比如word檔案,有格式要求) 字元流:純文字檔案 各有各的優勢:位元組流是萬
Java傳統IO / NIO基礎知識
1.IO的基本操作 只執行緒情況下只能有一個客戶端的連線 package xss.netty.basicio; import java.io.IOException; import java.io.InputStream; import java.net.ServerS
javaAPI_IO流基礎_位元組流基礎知識
IO流 1.IO流概述 所謂的IO流就是用來進行裝置之間的資料傳輸的。 2.IO流分類 (1).按照資料流向 輸入流 讀取資料 輸出流 寫出資料 (2).按照資料型別 位元組流 位元組輸入流 讀取資料 InputStream 位元組輸出流 寫出資料 OutputStream 字元流 字元輸入流 讀取資料
IO流基礎
IO流概述 (1)用來處理裝置(硬碟,控制檯,記憶體)間的資料。 (2)java中對資料的操作都是通過流的方式。 (3)java用於操作流的類都在io包中。 (4)按照
用IO流的知識將兩個檔案寫到一個檔案中(設定字元編碼)
1、把a.txt文字檔案(gbk)和b.ttt文字檔案(utf-8)的內容讀取出來,把a.txt內容加b.ttt內容一起寫到c.txt檔案(gbk),先寫a再寫b。 public class Tes
Java IO流基礎總結【一】
IO流通過資料流、序列化和檔案系統提供系統輸入和輸出。流是一個很形象的概念,當程式需要讀取資料的時候,就會開啟一個通向資料來源的流,這個資料來源可以是檔案,記憶體,或是網路連線。類似的,當程式需要寫入資料的時候,就會開啟一個通向目的地的流。這時候你就可以想象資料好像在這其中“
Java基礎知識回顧之六 ----- IO流
.net 是否 簡單 取數據 高效 它的 .cn 回顧 們的 前言 在上一篇文章中,回顧了Java的多線程。而在本篇文章中主要介紹Java IO的相關知識。 IO的介紹 什麽是IO? IO的名稱又來是Input與Output的縮寫,也就是輸入流和輸出流。輸入流用於從源讀取
Java基礎知識(JAVA之IO流)
恢復 資源 rip 字節流 輸出 希望 str amr 對象序列化 學習Java IO,不得不提到的就是JavaIO流。 流是一組有順序的,有起點和終點的字節集合,是對數據傳輸的總稱或抽象。即數據在兩設備間的傳輸稱為流,流的本質是數據傳輸,根據數據傳輸特
java基礎知識-IO流-位元組流
耐得住寂寞,才能守得住繁華 流 1、在java中,所有的資料都是使用流讀寫的,流就像水流一樣,將資料從一個地方帶到另一個地方。 2、流是程式中的資料所經歷的的路徑,輸入流將資料從資料來源傳遞給程式,而輸出流將資料傳送到某個目的地。 流的分類 位元組流 位元組流傳送0
[5.23]Java 基礎知識 (IO流)
什麼是IO流流(Stream):源於UNIX中管道(pipe)的概念。在UNIX中,管道是一條不間斷的位元組流,用來實現程式或程序間的通訊,或讀寫外圍裝置,外部檔案等。IO流分為幾類兩類:位元組流和字元流什麼是位元組流?什麼是字元流?位元組流的概念:位元組流是由位元組組成的,
Java基礎知識IO流(File)
File概述 File類用來將檔案或者資料夾封裝成物件。方便對檔案和資料夾的屬性資訊進行操作。 構造方法: 1.File(File parent, String child) 根據 parent 抽象路徑名和 child 路徑名字串
java基礎知識--IO流示例
本人的GitHub:戳我一下 示例(一)——File類的基本用法 /** * File類的基本用法 */ package com.yifanjia.one; import java.io.*
【Java基礎知識】IO流 詳解
1.概念 (1)io流用來處理裝置之間的資料傳輸; (2)Java對資料的操作的操作是通過流的方式; (3)Java用於操作流的物件都在IO包; (4)io流按操作資料分為兩種:位元組流和字元流; (5)io流按流向分為:輸入流、輸出流 Java流類
Java基礎知識-IO流2
21.01_IO流(字元流FileReader) 1.字元流是什麼 字元流是可以直接讀寫字元的IO流 字元流讀取字元, 就要先讀取到位元組資料, 然後轉為字元. 如果要寫出字元, 需要把字元轉為位元組再寫出. 2.FileReader FileR
Java基礎知識 十三 IO流(下)
1.IO流中還包含了其他流,如下: 2..資料操作流(操作基本型別資料的流) (1)可以操作基本型別的資料 (2)流物件名稱 DataInputStream DataOutputSt
java基礎知識---IO流
IO流:★★★★★,用於處理裝置上資料。 流:可以理解資料的流動,就是一個數據流。IO流最終要以物件來體現,物件都存在IO包中。 流也進行分類: 1:輸入流(讀)和輸出流(寫)。 2:因為處理的資料不同,分為位元組流和字元流。 位元組流:處理位元組資料的流物件。裝置上的
基礎知識之IO流(裝飾設計模式)
readLine方法是增強read方法。 裝飾設計模式 /* 裝飾設計模式: 當想要對已有的物件進行功能增強時, 可以定義類,將已有物件傳入,基於已有的功能,並提供加強功能。 那麼自定義的該類稱為裝飾類。 裝飾類會通過構造方法接受被裝飾的物件。 並基於被裝飾的物件的功能,提