OOP 실험4-파일
3633 단어 OOP
실험 4 파일
실험 4 문건본 실험 4 학시
내용 참조 예: 파일에 Account 객체 저장파일에서 데이터를 읽고 Account 객체를 만듭니다.파일 계정.txt 형식은 다음과 같습니다.
1, 1
부록: 파일 읽기 및 쓰기 예제 FileTool.java 파일의 내용은 다음과 같습니다.
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class FileTool {
public static String read(String fileName) {
StringBuilder content = new StringBuilder();
try (FileInputStream fileInput = new FileInputStream(fileName);
InputStreamReader inputStreamReader = new InputStreamReader(fileInput);) {
while (inputStreamReader.ready()) {
content.append((char) inputStreamReader.read());
}
} catch (IOException ex) {
ex.printStackTrace();
}
return content.toString();
}
public static boolean write(String fileName, String content) {
try (FileOutputStream fileOutput = new FileOutputStream(fileName);) {
fileOutput.write(content.getBytes());
} catch (IOException ex) {
ex.printStackTrace();
return false;
}
return true;
}
}
Account.Java 파일의 내용은 다음과 같습니다.
public class Account {
private String accountID;
private int balance;
public void deposit(int amount) {
this.balance += amount;
}
public void withdraw(int amount) {
this.balance -= amount;
}
public Account() {
}
public Account(String accountID) {
this.accountID = accountID;
}
public Account(String accountID, int balance) {
this.accountID = accountID;
this.balance = balance;
}
public int getBalance() {
return balance;
}
public void setBalance(int balance) {
this.balance = balance;
}
public String getAccountID() {
return accountID;
}
public void setAccountID(String accountID) {
this.accountID = accountID;
}
}
AccountDao.java 파일의 내용은 다음과 같습니다.
public class AccountDao {
private String accountFileName;
public AccountDao() {
}
public AccountDao(String accountFileName) {
this.accountFileName = accountFileName;
}
public Account getAccount() {
String content = FileTool.read(accountFileName);
String[] items = content.split(",");
Account account = new Account(items[0], Integer.parseInt(items[1]));
return account;
}
public boolean saveAccounts(Account account) {
String content = "";
content += account.getAccountID() + "," + account.getBalance();
return FileTool.write(accountFileName, content);
}
}
마스터 클래스MainClass.Java 파일의 내용은 다음과 같습니다.
public class MainClass {
public static void main(String[] args) {
String accountFileName = "c:/javalab/account.txt";
AccountDao accountDao = new AccountDao(accountFileName);
Account account = accountDao.getAccount();
System.out.println(account.getAccountID() + ":" + account.getAccountID());
account.deposit(100);
accountDao.saveAccounts(account);
account = accountDao.getAccount();
System.out.println(account.getAccountID() + ":" + account.getAccountID());
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[Java] 객체지향 프로그래밍 - 역사와 클래스실제 사물의 속성과 기능을 분석한 다음, 데이터(변수)와 함수로 정희하여 실제 세계를 컴퓨터 속에 옮겨 놓은 것과 같은 가상 세계를 구현하고 이 가상세계에서 모의실험을 함으로써 많은 시간과 비용을 절약할 수 있게 되...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.