-
gbk 中文占2字節(jié) 英文1字節(jié) utf-8 中文占3字節(jié) 英文1字節(jié) java 雙字節(jié)查看全部
-
java.io.File類用于表示文件(目錄)
File類只用于表示文件(目錄)的信息(名稱、大小等),不能用于文件內(nèi)容的訪問
RandomAccessFile java提供的對文件內(nèi)容的訪問,既可以讀文件,也可以寫文件。
RandomAccessFile支持隨機訪問文件,可以訪問文件的任意位置
查看全部 -
File類
File類只用于表示文件(目錄)的信息(名稱、大小等),不能用于文件內(nèi)容的訪問。
file.exists():判斷文件/文件夾是否存在
file.mkdir():創(chuàng)建文件夾(一級)
file.mkdirs():創(chuàng)建文件夾(多級)
file.delete():刪除文件/文件夾
File.separator設(shè)置分隔符
file.isDirectory():是否是一個目錄
file.isFile():是否是一個文件
.createNewFile():創(chuàng)建文件
查看全部 -
.toHexString(名稱 & 0xff)把字節(jié)以16進(jìn)制的方式顯示。
gbk編碼中文占用2個字節(jié),英文占用1個字節(jié)
utf-8編碼中文占用3個字節(jié),英文占用1個字節(jié)
utf-16be 中文占用2個字節(jié),英文占用2個字節(jié)
如果我們在中文機器上直接創(chuàng)建文本文件,那么該文本文件只認(rèn)識ansi編碼
中文系統(tǒng)下,ANSI編碼代表GBK編碼
當(dāng)你用字節(jié)序列標(biāo)識某種編碼時,這個字節(jié)序列變成字符串,也需要這種編碼方式,否則出現(xiàn)亂碼
查看全部 -
對子類對象進(jìn)行反序列化操作時,如果其父類沒有實現(xiàn)序列化接口,那么其父類構(gòu)造函數(shù)會被調(diào)用,如果實現(xiàn)了序列化接口,反序列化時該父類可以直接從序列化時指定的用于存儲的文件里讀取數(shù)據(jù)
查看全部 -
private transient int stuage
該元素不會進(jìn)行默認(rèn)的序列化,但也可以自行完成這個元素的序列化
查看全部 -
序列化反序列化
查看全部 -
序列化。。
查看全部 -
InputStreamReader/OutputStreamWriter構(gòu)造方法需要?InputStream/OutputStream 的對象? , 可以設(shè)置編碼。FileRead/Writer 構(gòu)造方法直接是是 File 的對象 ,這樣代碼量相對較少,但創(chuàng)建時不可以設(shè)置編碼,需要額外注意
查看全部 -
BufferedInputStream & BufferedOutputStream
這兩個流類為IO提供了帶緩沖區(qū)的操作,一般打開文件進(jìn)行寫入或讀出操作時,都會加上緩沖,這種流模式提高了IO的性能
FileOutputStream--->write()方法相當(dāng)于一滴一滴地把水“轉(zhuǎn)移”過去
DataOutputStream--->writeXxx() 方法相當(dāng)于一瓢一瓢把水“轉(zhuǎn)移”過去
BufferedOutputStream-->write() 相當(dāng)于一瓢一瓢放到桶里,再從桶中倒入缸中,性能提高了
要用.flush()刷新緩沖區(qū),要不然寫入不到文件當(dāng)中去
查看全部 -
FileInputStream.read()
查看全部 -
轉(zhuǎn):byte 類型 8 位,int 類型 32 位,為了避免數(shù)據(jù)轉(zhuǎn)換錯誤,通過 & 0xff 將高 24 位清零
FileInputStream.read() 單字節(jié)適合讀取 小 文件
FileInputStream.read(byte[] bytes,int star,int size) 字節(jié)數(shù)組適合讀取 大 文件
讀取文件最常用的是批量讀取int bytes = FileInputStream.read(buf, 0 , buf.length);
FileInputStream文件輸入
單字節(jié)輸入即不用數(shù)組。從in中批量讀取字節(jié),放入到buf這個字節(jié)數(shù)組中, 從第0個位置開始放,最多放buf.length個 返回的是讀到字節(jié)的個數(shù),fileName為方法的參數(shù)
查看全部 -
FileOutputStream 實現(xiàn)了向文件中寫出byte數(shù)據(jù)的方法,其.write()方法只能寫8位
輸出流FileOutputStream fileout=new FileOutputStream("路徑",文件原本內(nèi)容處理方式(true為追加,false為覆蓋。));
如果路徑所指文件不存在,則直接創(chuàng)建,如果存在,則刪除后創(chuàng)建 ?
用中間變量buf從源文件讀取內(nèi)容,向目標(biāo)文件寫入內(nèi)容。
查看全部 -
DataInputStream和DataOutputStream是對流的擴展,裝飾模式,可以更方便的讀寫int,long,字符等類型的數(shù)據(jù),讀寫完要記得.close()
DataOutputStream? ? writeInt()/writeDouble()/writeUTF()
查看全部 -
java.io.File類用于表示文件(目錄)
File類只用于表示文件(目錄)的信息(名稱、大小等),不能用于文件內(nèi)容的訪問
RandomAccessFile java提供的對文件內(nèi)容的訪問,既可以讀文件,也可以寫文件。
RandomAccessFile支持隨機訪問文件,可以訪問文件的任意位置
查看全部
舉報