第一篇:Java中輸出流
從輸入流中當前位置讀入一個字節的二進制數據,以此數據為低位字節,補足16位的整型量(0~255)后返回,若輸入流中當前位置沒有數據,則返回-1
int read(byte b[])
在數組中,并返回所讀取的字節數
寫入文件的PipedOutputStream
輸出管道
FilterOutputStream
過濾輸出流
ByteArrayOutputStream
寫入字節數組的輸出流
ObjectOutputStream
對象的輸出流
DataOutputStream
包含寫Java標準數據類型方法的輸出流
BufferedOutputStream
緩沖輸出流
PrintStream
包含print()和println()的輸出流
OutputStream流類中包含一套所有輸出都需要的方法,可以完成最基本的向輸出流寫入數據的功能。表10-8列出了其中常用的方法及說明。
表10-8 OutputStream的常用方法
方法
功能描述
void close()
關閉輸出流
void flush()
強制清空緩沖區并執行向外設輸出數據
void write(int b)
將參數b的低位字節寫入到輸出流
void write(byte b[])
按順序將數組b[]中的全部字節寫入到輸出流
void write(byte b[], int off, int len)
按順序將數組b[]中第off+1個元素開始的len個數據寫入到輸出流
由于InputStream和OutputStream都是抽象類,所以在程序中創建的輸入流對象本溪娛樂棋牌q07i5.org一般是它們某個子類的對象,通過調用對象繼承的read()和write()方法就可實現對相應外設的輸入輸出操作。
第二篇:java 文件與輸入輸出流
實驗2文件與輸入輸出流(1)
一、實驗目的? 能夠使用File類表示文件或目錄,獲取相關信息,并進行文件操作; ? 能夠利用InputStream和OutputStream的子類進行字節讀、寫操作,明白其優點及不足;
? 能夠用FileInputStream和FileOutputStream進行文件讀寫的操作; ? 理解“逐層包裝”思想,能夠利用“數據流”(DataInputStream和DataOutputStream)包裝字節流,方便各類數據的讀寫;
? 能夠利用“緩沖字節流”(BufferedInputStream和BufferedOutputStream)包裝字節流,加快數據的讀寫速度;
? 熟知System.in和System.out是PrintStream的實例。
二、實驗步驟
在Eclipse環境中導入項目“code(lab_2)”,然后按要求完成各小題:
1.打開FileTest.java文件,請按下列要求進行操作:
(1)按要求填充程序所缺代碼;
(2)程序的運行需要用到一個命令行參數,請分別用一個文件、目錄作參數來運行程序,看一看結果有什么不同。
(在Eclipse中設置命令行參數方法:Run/Open Run Dialog ?/(x)=Arguments設置)
2.在上一題的基礎上,修改程序,使之具備輸出指定目錄下所有子目錄中文件絕對路徑名、大小的功能,如下所示:
子目錄:C:jdk1.6.0sample
子目錄:C:jdk1.6.0samplewebservices
子目錄:C:jdk1.6.0samplewebservicesEbayServer
文件: C:jdk1.6.0samplewebservicesEbayServerbuild.properties,大小: 512 字節 文件: C:jdk1.6.0samplewebservicesEbayServerbuild.xml,大小: 3168 字節1
……
提示:參考課件 FileSpace.java內容,通過一個以“路徑名”為參數的靜態方法來實現:該方法先判斷“路徑名”是一個文件,還是一個目錄?如果是文件,則輸出其絕對路徑和大小;若為一個目錄,則先顯示目錄絕對路徑,再列出該目錄下的所有子目錄和文件,通過循環和遞歸方法來執行后續處理。
3.文件FileOutputStreamTest.java的功能是:利用FileOutputStream類向myfile.txt文件寫入'0'~'9'和“用字節流寫入文件內容”,請填充程序所缺代碼,并運行程序。然后打開myfile.txt文件,查看其內容是否與要求相符?
4.文件FileInputStreamTest1.java的功能是:利用FileInputStream類以“逐字節”方式讀取myfile.txt文件內容,并輸出。請填充程序所缺代碼,并運行程序。問題:為什么程序輸出的內容為亂碼?
5.在FileInputStreamTest1.java的基礎上,編寫程序FileInputStreamTest2.java,利用FileInputStream類以“字節數組”方式讀取myfile.txt文件內容,能正確輸出,解決亂碼問題。
思考題:亂碼問題是怎樣解決的?
6.若要將信息“Java開發典型模塊大全”(書名)、“明日科技”(作者)、79.5(價格)等信息以UTF、double類型保存到文件books.txt中,請用“數據流”類編程實現。
第三篇:java流實驗內容及代碼
實驗7 流(2學時)
一、實驗目的1.熟悉流類庫中各種常用流的使用方法。
2.能夠使用流類實現基本的文件讀寫。
二、實驗內容
1.編寫程序,在控制臺窗口提示輸入兩個整數,然后接收這兩個整數,并輸出它們的和。(要求:鍵盤輸入通過流封裝System.in獲取,不要使用Scanner類)
import java.io.*;System.out.println(x);System.out.println(“y”);public class Num1 {n=in.readLine();public static void main(String []args)y=Integer.parseInt(n);{System.out.println(y);int x=0,y=0;}catch(IOException e)BufferedReader in=new BufferedReader({
newSystem.out.println(“error”);InputStreamReader(System.in));}
String n;int s=x+y;
try{System.out.println(s);System.out.println(“x”);}
n=in.readLine();}
x=Integer.parseInt(n);
2.設計學生類Student,屬性:編號(整型);姓名(字符串),成績(整型)。編寫一個程序:要求:(1)輸入3個學生的姓名和成績,將其姓名和成績保存到data.txt中;(2)然后從該文件中讀取數據,求得這三個學生的平均成績。
import java.io.*;DataOutputStream dout = newDataOutputStream(public class num2 {newpublic static void main(String[]args)FileOutputStream(“D:data.txt”));{String n;
BufferedReader in=new BufferedReader(for(int i=0;i<5;i++)new{
InputStreamReader(System.in));n=in.readLine();
int num=Integer.parseInt(n);try{String name=in.readLine();
n=in.readLine();int grade=Integer.parseInt(n);dout.writeBytes(num+“rn”);dout.writeBytes(name+“rn”);dout.writeBytes(grade+“rn”);}dout.close();}catch(IOException e1){int num=Integer.parseInt(n);
n=din.readLine();String name=n;n=din.readLine();int grade=Integer.parseInt(n);ave+=grade;}System.out.println(“平均成績”+ave*1.0/5);System.out.println(“文件寫入失敗”);}try{DataInputStream din =new DataInputStream(new FileInputStream(“D:data.txt”));int ave=0;String n;for(int i=0;i<5;i++){n=din.readLine();
三、實驗要求
完成程序設計并提交實驗報告。
在“);失敗”);} }
}catch(FileNotFoundException e){System.out.println(“文件不存}catch(IOException e2){System.out.println(”文件讀取}
第四篇:實驗12:Java高級IO流程序設計
實驗12:Java高級I/O流程序設計
實驗時間:實驗地點:
一、實驗目的及要求
(1)掌握文件類File的使用。
(2)理解隨機存取文件類RandomAccessFile的使用。
二、實驗設備環境及要求
三、實驗任務
(1)按要求編寫Java Application程序,并編譯、運行這個程序。
四、實驗內容與步驟
1.輸出當前目錄下my.txt文件的基本信息。
import java.io.*;
import java.util.*;
public class FileTest{
public static void main(String args[]){File f=new File(“my.txt”);System.out.println(“Absolute path: ” + f.getAbsolutePath()+“n Can read: ” + f.canRead()+“n Can write: ” + f.canWrite()+“n getName: ” + f.getName()+“n getParent: ” + f.getParent()+“n getPath: ” + f.getPath()+“n length: ” + f.length()+“n lastModified: ” + new Date(f.lastModified()));if(f.isFile())System.out.println(“It's a file”);
}}else if(f.isDirectory())System.out.println(“It's a directory”);
2.編寫一個Java Application程序,實現如下的設計功能:運行該程序可以列出當前目錄下的文件。
import java.io.*;
class FileDir{
public static void main(String args[]){
File f=new File(“D:”);
File fs[]=f.listFiles();
for(int i=0;i if(fs[i].isFile()) System.out.println(fs[i].getName()); else System.out.println(“
}
}
}
五、實驗指導與處理
六、分析討論
實驗教師評語成績
簽名:
日期:
第五篇:Java語言實驗指導書-實驗10 流范文
一、實驗目的(1)熟悉文件流操作方法。
(2)應用文件流操作文件。
二、實驗內容
(1)利用流操作,在屏幕上顯示文本文件內容及文件的路徑、修改時間、大小、長度、可讀性和可修改性等屬性。
(2)借助流操作,以圖形界面方式向文本文件添加記錄并顯示其記錄內容。
三、實驗要求
文件名通過命令行以參數方式輸入。程序需要判斷參數所提供文件的存在性。待添加的 記錄通過TextField控件輸入,文件內容通過TextArea控件顯示。