国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

簡單的I/O流的讀取與輸入(上)

2019-11-11 04:01:45
字體:
供稿:網(wǎng)友

  I/O流中的字節(jié)流的讀取與輸入

(用于讀取寫入二進制文件,如圖片、聲音、影響等類型文件)

1.對于文件的讀取,輸入流InputStream下的子類FileInputStream有一個read()可以讀取數(shù)據(jù),read(byte[])這個方法需要傳入一個參數(shù)這個參數(shù)是一個byte型的數(shù)組,用于存儲讀取到的數(shù)據(jù)2.把byte數(shù)組轉(zhuǎn)化為string類型的數(shù)據(jù)方便使用String str=new String(by)(by是byte型數(shù)組的名稱)讀取完文件后需要關(guān)閉輸入流,以免占用內(nèi)存空間3.完整的過程需要用try/catch來包住,以免程序發(fā)生錯誤而終止不了讀取文件代碼示例:

public Static String getMsg(){	byte msg[]=new byte[100];	String str=null;	try{		InputStream is=new FileInputStream("src/a.txt");		is.read(msg);		str=new String(msg);		is.close();	}catch(FileNotFoundException e){		e.PRintStackTrace();	}catch(IOException e){		e.printStackTrace();	}	return str;}

4.對于文件的寫入,OutputStream下的子類FileOutputStream有一個write()方法寫入數(shù)據(jù)到指定文件,write()方法需要傳入一個byte[]數(shù)組,如果你想傳入String類型的數(shù)據(jù),String類型數(shù)據(jù)有可以轉(zhuǎn)化為byte[]的方法寫入文件代碼示例:

public Static String putMsg(){	String msg=getMsg();	try{		OutputStream os=new FileOutputStream("src/b.txt",true);		os.write(13);		os.wirte(10);		//在windows系統(tǒng)下,換行符用ASCII碼表示是13 10,這里是換行的意思		os.write(msg.getBytes());		//把String類型數(shù)據(jù)轉(zhuǎn)化為byte[]數(shù)組		os.flush();		//刷新輸出流		os.close();	}catch (FileNotFoundException e) {		e.printStackTrace();	} catch (IOException e) {		e.printStackTrace();	}}5.上面是對于文本類型文件的讀取與寫入,但是圖片、聲音、影響文件不會把讀取的數(shù)據(jù)轉(zhuǎn)為String類型數(shù)據(jù),而是直接用byte數(shù)組來存儲數(shù)據(jù),然后全寫入另一個文件,相當于復(fù)制粘貼一個文件,這里需要注意的是讀取與寫入的文件類型要一致,即文件的后綴名需要一致。代碼示例演示復(fù)制粘貼并打開聲音文件:
public static void get(){	try{		InputStream is=new FileInputStream("E:/音樂/金娜英 - 說出心聲.mp3");		OutputStream os=new FileInputStream("E:/Youku Files/mymusic.mp3");		byte music[]=new byte[1024*10];		int len=0;		while((len=is.read(music))!=-1){			os.write(music);		}		is.close();		os.close();	}catch (FileNotFoundException e) {		e.printStackTrace();	} catch (IOException e) {		e.printStackTrace();	}	String cmd="cmd /c/"文件路徑.mp3/"";	Runtime run=Runtime.getRuntime();	try{		run.exec(cmd);	}catch (IOException e) {		e.printStackTrace();	}	//打開文件}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 平南县| 万盛区| 上思县| 武城县| 淅川县| 定边县| 台州市| 剑河县| 淮阳县| 湟中县| 东阳市| 盐源县| 高青县| 襄城县| 洪江市| 阳东县| 咸宁市| 赣榆县| 灯塔市| 博野县| 屯昌县| 太原市| 万山特区| 宽城| 荆州市| 玛沁县| 忻城县| 会东县| 乌什县| 调兵山市| 阳东县| 高平市| 伊宁县| 峨眉山市| 黄石市| 孟连| 彰武县| 托克托县| 三江| 农安县| 都兰县|