public
void
testfilereader()
//方式二:語法上針對於方式一的修改
int data;
while
((data = fr.
read()
)!=-1
)}catch
(ioexception e)
finally
catch (ioexception e)
//或if
(fr != null)
catch
(ioexception e)}}
}
說明:
read()的理解:返回讀入的乙個字元。如果達到檔案末尾,返回-1
異常的處理:為了保證流資源一定可以執行關閉操作。需要使用try-catch-finally處理
讀入的檔案一定要存在,否則就會報filenotfoundexception。
@test 對read()
操作公升級:使用read的過載方法
public
void
testfilereader1()
//正確的寫法
for(
int i =
0;i < len;i++
)//方式二:
//錯誤的寫法,對應著方式一的錯誤的寫法
// string str = new string(cbuf);
// system.out.print(str);
//正確的寫法
string str =
newstring
(cbuf,
0,len)
; system.out.
print
(str);}
}catch
(ioexception e)
finally
catch
(ioexception e)}}
}
public
void
testfilewriter()
catch
(ioexception e)
finally
catch
(ioexception e)}}
}
//注意:此處的異常都以丟擲的方式處理,在開發中要以try-catch-finally的形式處理
public
void
testfilereaderwriter()
throws ioexception
fr1.
close()
; fw1.
close()
;}
//注意:此處的異常都以丟擲的方式處理,在開發中要以try-catch-finally的形式處理
public
void
teststreaminput()
throws ioexception
//讀取方式二:使用轉換流將位元組轉換成字元,在讀取一行資料
inputstreamreader isr =
newinputstreamreader
(fis)
;//位元組轉字元
bufferedreader br =
newbufferedreader
(isr)
;//緩衝流
string str = null;
while
((str = br.
readline()
)!= null)
//閉流
fis.
close()
;}
//注意:此處的異常都以丟擲的方式處理,在開發中要以try-catch-finally的形式處理
public
void
teststreaminputoutput()
throws ioexception
//閉流
fis.
close()
; fos.
close()
;}
//注意:此處的異常都以丟擲的方式處理,在開發中要以try-catch-finally的形式處理
public
void
teststreaminputoutput
(string srcfile,string destfile)
throws ioexception
//閉流
fis.
close()
; fos.
close()
;}
節點流和處理流(2)
注意事項細節說明 讀寫要一致 要求實現序列化和反序列化物件,需要實現 serializable 序列化類中建議新增 serialversionuid,為了提高版本的相容性 序列化物件時,預設將裡面所有屬性都進行序列化,但除了static 或 transient 修飾的成員 序列化物件時,要求裡面屬性...
IO 節點流 組合
1 檔案 程式 位元組陣列 1 檔案輸入流 位元組陣列輸出流 2 位元組陣列 程式 檔案 1 位元組陣列輸入流 檔案輸出流 author administrator public class demo02 2 位元組陣列 程式 檔案 1 位元組陣列輸入流 檔案輸出流 public static vo...
IO流3 IO流 節點流 字元流的使用
read 將hello.txt檔案內容讀入程式中,並輸出到控制台 test public void testfilereader catch ioexception e finally catch ioexception e 說明點 read 的理解 返回讀入的乙個字元。如果達到檔案末尾,返回 1 ...