import java.io.*;
public class Data{
public boolean boolData;
public byte byteData;
public char charData;
public double dblData;
public String strData;
// コンストラクタ
public Data(){
boolData = false;
byteData = 0;
charData = '\0';
dblData = 0D;
strData = "";
}
// 文字列への変換
public String toString(){
String str = "";
str += boolData + "\r\n";
str += byteData + "\r\n";
str += charData + "\r\n";
str += dblData + "\r\n";
str += strData + "\r\n";
return str;
}
// クラス書き込み用メソッド
public void writeObject(DataOutputStream stream) throws IOException{
stream.writeBoolean(boolData);
stream.writeByte (byteData);
stream.writeChar (charData);
stream.writeDouble (dblData);
stream.writeUTF (strData);
}
// クラス読み込み用メソッド
public void readObject(DataInputStream stream) throws IOException{
boolData = stream.readBoolean();
byteData = stream.readByte ();
charData = stream.readChar ();
dblData = stream.readDouble ();
strData = stream.readUTF ();
}
}
import java.io.*;
import java.util.*;
class Save{
public static void main(String args[]){
// データ作成
Data data = new Data();
data.boolData = true;
data.byteData = (byte)(new Random()).nextInt();
data.charData = 'あ';
data.dblData = (new Random()).nextDouble();
data.strData = "abcdefg";
try{
// ストリーム作成
DataOutputStream outStream = new DataOutputStream(new FileOutputStream(args[0]));
// クラスデータ書き込み
data.writeObject(outStream);
// クローズ
outStream.close();
// 書き込んだデータ確認
System.out.println(data);
}catch(FileNotFoundException e){
System.err.println("ファイルが開けません");
}catch(IOException e){
System.err.println("入出力エラーです\n" + e);
}
}
}
import java.io.*;
import java.util.*;
class Load{
public static void main(String args[]){
// データ作成
Data data = new Data();
try{
// ストリーム作成
DataInputStream inStream = new DataInputStream(new FileInputStream(args[0]));
// データ読み込み
data.readObject(inStream);
// クローズ
inStream.close();
// 読み込んだデータ表示
System.out.println(data);
}catch(FileNotFoundException e){
System.err.println("ファイルが開けません");
}catch(IOException e){
System.err.println("入出力エラーです\n" + e);
}catch(Exception e){
System.err.println(e);
}
}
}
|