java中outputstream文件输出流的用法(cyan20115的博客)
流是用來(lái)讀寫(xiě)傳輸數(shù)據(jù)的,輸入和輸出是對(duì)程序本身而言的,但程序需要讀入數(shù)據(jù)用讀入流,程序需要將數(shù)據(jù)輸出保存起來(lái)用輸出流。
流相當(dāng)于各種不同的管道來(lái)傳輸數(shù)據(jù)。按讀入和輸出分為輸入流和輸出流。按傳輸?shù)念?lèi)型分為字節(jié)流和字符流。按管道與管道的關(guān)系又可分為節(jié)點(diǎn)流與處理流。
outputstream是java中的字節(jié)輸出流,它能用來(lái)將文件或者字符串輸出到新的文件中。具體操作查看原文,附代碼解釋。
字節(jié)流中輸出使用OutputStream類(lèi)輸入使用InputStream類(lèi)。
在java中流的操作分為下面4個(gè)步驟:
使用File類(lèi)打開(kāi)一個(gè)文件 通過(guò)流的子類(lèi)來(lái)指定位置 進(jìn)行輸入或輸出操作 關(guān)閉輸入/輸出
登錄后復(fù)制
字節(jié)輸出流:OutputStream
OutputStream類(lèi)是抽象類(lèi),其子類(lèi)FileOutputStream
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class TestOutPutStream {
private static InputStream in;
private static OutputStream out;
public static void main(String[] args) {
try {
in = new FileInputStream("D:/test/testIO.java");
if(in == null){
//原文件不存在
System.out.println("原文件不存在");
}else{
//原文件存在,判斷目標(biāo)文件是否存在
File file = new File("D:/test/testIOO.txt");
if(!file.exists()){
//目標(biāo)文件不存在,創(chuàng)建目標(biāo)文件
file.getParentFile().mkdirs();
file.createNewFile();
}
//將原文件內(nèi)容讀取到目標(biāo)文件
out = new FileOutputStream(file);
int a = 0;
while((a = in.read()) != -1){
out.write(a);
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//流關(guān)閉
try {
if(in != null){
in.close();
}
if(out != null){
out.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
登錄后復(fù)制
通過(guò)實(shí)踐,發(fā)現(xiàn)原先D盤(pán)中有文件,通過(guò)outputstream生成了新的文件。
以上就是java中outputstream文件輸出流的用法的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注風(fēng)君子博客其它相關(guān)文章!
總結(jié)
以上是生活随笔為你收集整理的java中outputstream文件输出流的用法(cyan20115的博客)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CoreOS上的Fleet,第二部分
- 下一篇: 英雄联盟怎么玩(用电脑怎样玩英雄联盟)