Head First Java 第2版
頭とからだで覚えるJavaの基本
(オライリージャパン)
Kathy Sierra (著) Bert Bates (著) 島田 秋雄(監修)
神戸 博之 (監修) 高坂 一城 (監修) 夏目 大 (翻訳)
開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Java (プログラミング言語)
- javac (コンパイラ)
- java (application launcher)
Head First Java 第2版 ―頭とからだで覚えるJavaの基本(Kathy Sierra (著)、Bert Bates (著)、島田 秋雄 (監修)、神戸 博之 (監修)、高坂 一城 (監修)、夏目 大 (翻訳)、オライリージャパン)の14章(シリアライゼーションとファイルI/O)、自分で考えてみよう(p.464)を解いてみる。
自分で考えてみよう(p.464)
コード(BBEdit, Emacs)
BeatBox.java
// 省略
public class BeatBox {
// 省略
// こんな感じでいいのかなぁ。
public class MySendListener implements ActionListener {
public void actionPerformed(ActionEvent a) {
boolean [] checkboxState = new boolean [256];
for (int i = 0; i < 256; ++i) {
JCheckBox check = (JCheckBox) checkboxList.get(i);
if (check.isSelected()) {
checkboxState [i] = true;
}
}
try {
JFileChooser fileSave = new JFileChooser();
fileSave.showSaveDialog(frame);
FileOutputStream fileStream =
new FileOutputStream(fileStream.getSelectedFile());
ObjectOutputStream os = new ObjectOutputStream(fileStream);
os.writeObject(checkboxState);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
public class MyReadInListener implements ActionListener {
public void actionPerformed(ActionEvent a) {
boolean [] checkboxState = null;
try {
JFileChooser fileOpen = new JFileChooser();
fileOpen.showOpenDialog(frame);
FileInputStream fileIn =
new FileInputStream(fileOpen.getSelectedFile());
ObjectInputStream is = new ObjectInputStream(fileIn);
checkboxState = (boolean [])is.readObject();
} catch (Exception ex) {ex.printStackTrace();}
for (int i = 0; i < 256; ++i) {
JCheckBox check = (JCheckBox) checkboxList.get(i);
if (checkboxState[i]) {
check.setSelected(true);
} else {
check.setSelected(false);
}
}
sequencer.stop();
buildTrackAndStart();
}
}
}
0 コメント:
コメントを投稿