中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站a記錄的是做cname營(yíng)銷方案怎么寫?

網(wǎng)站a記錄的是做cname,營(yíng)銷方案怎么寫?,公司網(wǎng)站制作商,網(wǎng)站建設(shè)的價(jià)位目錄 文件字節(jié)輸入流:每次讀取多個(gè)字節(jié) 實(shí)例演示 注意事項(xiàng) 文件字節(jié)輸入流:一次讀取完全部字節(jié) 方式一 方式二 注意事項(xiàng) 文件字節(jié)輸入流:每次讀取多個(gè)字節(jié) 用到之前介紹過的常用方法: 實(shí)例演示 需求:用每次讀取…

目錄

文件字節(jié)輸入流:每次讀取多個(gè)字節(jié)

實(shí)例演示

注意事項(xiàng)

文件字節(jié)輸入流:一次讀取完全部字節(jié)

方式一

方式二

注意事項(xiàng)


文件字節(jié)輸入流:每次讀取多個(gè)字節(jié)

用到之前介紹過的常用方法:

實(shí)例演示

需求:用每次讀取多個(gè)字節(jié)的方法讀出File文件的內(nèi)容

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;public class FileInputStreamTest2 {public static void main(String[] args) throws Exception {//1.創(chuàng)建一個(gè)字節(jié)輸入流對(duì)象代表字節(jié)輸入流管道與源文件接通。InputStream is = new FileInputStream("HelloWorld\\src\\file.txt");//2.開始讀取文件中的字節(jié)數(shù)據(jù):每次讀取多個(gè)字節(jié)。//public int read(byte b[]) throws IoException//每次讀取多個(gè)字節(jié)到字節(jié)數(shù)組中去,返回讀取的字節(jié)數(shù)量,讀取完畢會(huì)返回-1byte[] buffer = new byte[3];int len = is.read(buffer);String rs = new String(buffer);System.out.println(rs);System.out.println("當(dāng)前讀取的字節(jié)數(shù)量:" + len);//目標(biāo)文件有5個(gè)字節(jié),需要再讀取一次//注意:讀取多少,倒出多少int len2 = is.read(buffer);String rs2 = new String(buffer,0,len2);System.out.println(rs2);System.out.println("當(dāng)前讀取的字節(jié)數(shù)量:" + len2);int len3 = is.read(buffer);System.out.println(len3);   //-1is.close(); //關(guān)閉流}
}

運(yùn)行結(jié)果:

使用循環(huán)改造一下

package user.IOTestOne;import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;public class FileInputStreamTest2 {public static void main(String[] args) throws Exception {//1.創(chuàng)建一個(gè)字節(jié)輸入流對(duì)象代表字節(jié)輸入流管道與源文件接通。InputStream is = new FileInputStream("HelloWorld\\src\\file.txt");//使用循環(huán)byte[] buffer = new byte[3];int len;    //記住每次讀取了多少個(gè)字節(jié)while((len = is.read(buffer)) != -1){//注意:讀取多少,倒出多少String rs = new String(buffer,0,len);System.out.println(rs);}//性能得到了明顯的提升//但是這種方案也不能避免讀取漢字輸出亂碼的問題is.close(); //關(guān)閉流}
}

運(yùn)行結(jié)果:

注意事項(xiàng)

  • 使用FilelnputStream每次讀取多個(gè)字節(jié),讀取性能得到了提升,但讀取漢字輸出還是會(huì)亂碼。

使用字節(jié)流讀取中文,如何保證輸出不亂碼,怎么解決?

  • 定義一個(gè)與文件一樣大的字節(jié)數(shù)組,一次性讀取完文件的全部字節(jié)。

文件字節(jié)輸入流:一次讀取完全部字節(jié)

方式一

自己定義一個(gè)字節(jié)數(shù)組與被讀取的文件大小一樣大,然后使用該字節(jié)數(shù)組,一次讀完文件的全部字節(jié)。

方法名稱說明
public int read(byte[] buffer)每次用一個(gè)字節(jié)數(shù)組去讀取,返回字節(jié)數(shù)組讀取了多少個(gè)字節(jié),如果發(fā)現(xiàn)沒有數(shù)據(jù)可讀會(huì)返回-1.

注意:文件存于硬盤中,硬盤的大小是極大的,文件的大小也可能會(huì)很大;但是我們定義的數(shù)組實(shí)際上存儲(chǔ)于內(nèi)存中,內(nèi)存是很小的,無法給數(shù)組定義很大的長(zhǎng)度;因此,這個(gè)方法只適合讀取不那么大的文件。

選取案例還是那個(gè)File文件

package user.IOTestOne;import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;public class FileInputStreamTest3 {public static void main(String[] args) throws Exception{//1.創(chuàng)建一個(gè)字節(jié)輸入流管道與源文件接通InputStream is = new FileInputStream("HelloWorld/src/file.txt");//2.準(zhǔn)備一個(gè)字節(jié)數(shù)組,大小與文件的大小正好一樣大。File f = new File("HelloWorld/src/file.txt");long size = f.length();byte[] buffer = new byte[(int) size];int len = is.read(buffer);System.out.println(new String(buffer));System.out.println("文件大小:" + size + "字節(jié)");System.out.println(len);is.close();}
}

運(yùn)行結(jié)果:

方式二

  • Java官方為lnputStream提供了如下方法,可以直接把文件的全部字節(jié)讀取到一個(gè)字節(jié)數(shù)組中返回。
方法名稱說明
public byte[] readAllBytes()throws IOException直接將當(dāng)前字節(jié)輸入流對(duì)應(yīng)的文件對(duì)象的字節(jié)數(shù)據(jù)裝到一個(gè)字節(jié)數(shù)組返回
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;public class FileInputStreamTest3 {public static void main(String[] args) throws Exception{//1.創(chuàng)建一個(gè)字節(jié)輸入流管道與源文件接通InputStream is = new FileInputStream("HelloWorld/src/file.txt");byte[] buffer = is.readAllBytes();  //JDK8 之后新增的方法System.out.println(new String(buffer));is.close();}
}

運(yùn)行結(jié)果:

注意事項(xiàng)

直接把文件數(shù)據(jù)全部讀取到一個(gè)字節(jié)數(shù)組可以避免亂碼,是否存在問題?

  • 如果文件過大,創(chuàng)建的字節(jié)數(shù)組也會(huì)過大,可能引起內(nèi)存溢出。

其實(shí),讀寫文本內(nèi)容本適合用字符流。

字節(jié)流適合做數(shù)據(jù)的轉(zhuǎn)移,如:文件復(fù)制等。

下篇就開始介紹字符流。


END


學(xué)習(xí)自:黑馬程序員——Java課程

http://www.risenshineclean.com/news/31122.html

相關(guān)文章:

  • 免費(fèi)的創(chuàng)建個(gè)人網(wǎng)站武漢大學(xué)人民醫(yī)院光谷院區(qū)
  • php做網(wǎng)站主要怎么布局百度明星人氣排行榜
  • 美容產(chǎn)品網(wǎng)站建設(shè)多少錢seo診斷網(wǎng)站
  • 手機(jī)h5頁面制作教程關(guān)鍵詞seo排名怎么選
  • 東京購(gòu)物商城百度整站優(yōu)化
  • 技術(shù)支持 鄭州做網(wǎng)站企業(yè)網(wǎng)搭建
  • 旅游網(wǎng)站的導(dǎo)航怎么做陜西網(wǎng)站設(shè)計(jì)
  • 南寧網(wǎng)站建設(shè)醉懂網(wǎng)絡(luò)外鏈官網(wǎng)
  • 企業(yè)網(wǎng)站建設(shè)服務(wù)公司搜索引擎優(yōu)化工具
  • 北京建站推廣全網(wǎng)推廣公司
  • b2c網(wǎng)站怎么做google關(guān)鍵詞搜索技巧
  • 網(wǎng)站平臺(tái)免費(fèi)游戲推廣員每天做什么
  • 學(xué)校網(wǎng)站建設(shè)調(diào)研報(bào)告天津疫情最新情況
  • 做網(wǎng)站平臺(tái)營(yíng)銷網(wǎng)站建站公司
  • 哪些網(wǎng)站專門做細(xì)胞的好的搜索引擎推薦
  • wordpress評(píng)論框加游戲優(yōu)化大師官方下載
  • 中英網(wǎng)站開發(fā)青島官網(wǎng)seo方法
  • 網(wǎng)站測(cè)試頁面怎么做網(wǎng)站推廣途徑和推廣要點(diǎn)
  • 天津門戶網(wǎng)站開發(fā)國(guó)家免費(fèi)技能培訓(xùn)官網(wǎng)
  • 睢縣網(wǎng)站建設(shè)如何創(chuàng)建一個(gè)app平臺(tái)
  • 新公司注冊(cè)在哪個(gè)網(wǎng)站全國(guó)31省市疫情最新消息今天
  • 做網(wǎng)站用什么工具百度推廣四川成都地區(qū)服務(wù)中心
  • 做網(wǎng)站要學(xué)java嗎網(wǎng)站seo 工具
  • 新公司注冊(cè)工商核名系統(tǒng)網(wǎng)站優(yōu)化外包
  • 高端用戶群瀏覽網(wǎng)站石家莊網(wǎng)站seo
  • 西安手機(jī)網(wǎng)站建設(shè)公司排名查關(guān)鍵詞熱度的網(wǎng)站
  • 怎樣建立一個(gè)營(yíng)銷的公司網(wǎng)站抖音seo搜索優(yōu)化
  • 卓越 網(wǎng)站建設(shè) 深圳西鄉(xiāng)競(jìng)價(jià)托管
  • 電子商務(wù)網(wǎng)站規(guī)劃的原則是什么seo技術(shù)博客
  • 全國(guó)網(wǎng)站制作公司石家莊seo外包公司