1. 程式人生 > >使用數據字節流將指定範圍內的所有素數寫入整形類型文件

使用數據字節流將指定範圍內的所有素數寫入整形類型文件

fileinput write 指定 pub stream row 程序設計 數據 try


import java.io.*;

public class Writeron
{
private String filename;

public Writeron(String filename)
{
this.filename = filename;
}

public void writeToFile() throws IOException
{
FileOutputStream fout = new FileOutputStream(this.filename);
DataOutputStream dout = new DataOutputStream(fout);
int i,j,flag;
for(i=2;i<100;i++){
flag=1;
for(j=2;j<i;j++){
if(i%j==0){
flag=0;
}
}
if(flag==1){
dout.writeInt(i);
}
}
dout.close(); //先關閉數據流
fout.close(); //再關閉文件流
}

public void readFromFile() throws IOException //從指定文件中讀取整數
{
FileInputStream fin = new FileInputStream(this.filename);
DataInputStream din = new DataInputStream(fin);
System.out.println(this.filename+":");
while (true) //輸入流未結束時
try
{
int i = din.readInt(); //從輸入流中讀取一個整數
System.out.print(i+" ");
}
catch (EOFException e)
{
break;
}
din.close(); //先關閉數據流
fin.close(); //再關閉文件流
}

public static void main(String args[]) throws IOException
{
Writeron afile = new Writeron("sushu.dat");
afile.writeToFile();
afile.readFromFile();
}
}


/*
程序運行結果如下:
sushu.dat:
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

程序設計說明如下:
1、readInt()方法到達輸入流末尾時,拋出EOFException異常。

*/

技術分享圖片

使用數據字節流將指定範圍內的所有素數寫入整形類型文件