#include <iostream>
#include <fstream>
#include <string>

using std::cout;
using std::endl;
using std::cin;

using std::ifstream;
using std::ofstream;
using std::fstream;
using std::ios;

class clFileClass
{
 // ifstream IpspFile;
 // ofstream OutputFile;
private:
 // Test Text :    1111-2222-3333-4444-55
public:
 // 파일 존재 유무를 검사
 bool cAccount_Insp(char *_cAccount);
 
 // 파일의 생성
 bool cAccount_Make(char *_cAccount);
 
 // Value를 file로 출력 (나의 입장에서는, 파일에 내용을 "출력하는 것")
 bool cAccount_Output (char *_cName, char *_cNumber, char *_cAddress, bool _bAccount, char *_cBankName, char *_cAccount, char *_cPassword, int _iMoney, bool _bCard,  char *_cCardID, char *_cCardPW, bool _bInternet, char *_cInternetID,  char *_cInternetPW);

 // 파일 내용을 화면에 입력 (나의 입장에서는, 파일의 내용을 "읽어오는 것")
 bool cAccount_Input(char *_cAccount);

 // 파일 내용을 DB에에 입력 (나의 입장에서는, 파일의 내용을 "읽어오는 것")
 bool cAccont_DB_Input(char *_cAccount)
 {
  return true;
 }
};

bool clFileClass::cAccount_Insp(char *_cAccount)
{
 ifstream IpspFile;
 IpspFile.open(_cAccount);
 if(!IpspFile)
 {
  IpspFile.clear(true,true);
  cout <<"***********************n "
    <<_cAccount<<"n"
    <<" 계좌가 존재하지 않음n"
    <<"***********************n"<<endl; 
  IpspFile.close();
  return false;
 }
 IpspFile.close();
 cout <<"***********************n"
   <<" 계좌가 존재합니다n"
   <<"***********************n"<<endl; 
 return true;
}

bool  clFileClass::cAccount_Make(char *_cAccount)
{
 ofstream OutputFile;
 OutputFile.open(_cAccount);
 if(!OutputFile)
 {
  cout <<"***********************n"
    <<" 파일 생성 실패n"
    <<"***********************n"<<endl;
  return false;
 }
 OutputFile.close();
 cout <<"***********************n"
   <<" File Making: " <<_cAccount
   <<"n***********************n"<<endl; 
 return true;
}

bool clFileClass::cAccount_Output (char *_cName, char *_cNumber, char *_cAddress, bool _bAccount, char *_cBankName, char *_cAccount, char *_cPassword, int _iMoney, bool _bCard,  char *_cCardID, char *_cCardPW, bool _bInternet, char *_cInternetID,  char *_cInternetPW)
{
 ofstream OutputFile;

 //파일 열기
 OutputFile.open(_cAccount);
 if(!OutputFile)
 {
  cout <<"***********************n"
    <<" File을 열 수 없음n"
    <<"***********************n"<<endl; 
  return false;
 }
 cout <<"***********************n"
   <<" File Writing: " <<_cAccount<<"n"
   <<"***********************n"<<endl; 
 // 개인정보
 OutputFile  <<_cName    <<endl;
 OutputFile  <<_cNumber   <<endl;
 OutputFile  <<_cAddress   <<endl;

 // 계좌정보
 OutputFile  <<_bAccount   <<endl;
 OutputFile  <<_cBankName  <<endl;
 OutputFile  <<_cAccount   <<endl;
 OutputFile  <<_cPassword   <<endl;
 OutputFile  <<_iMoney    <<endl;

 // 카드정보
 OutputFile  <<_bCard    <<endl;
 OutputFile  <<_cCardID   <<endl;
 OutputFile  <<_cCardPW   <<endl;

 // 통신정보
 OutputFile  <<_bInternet   <<endl;
 OutputFile  <<_cInternetID  <<endl;
 OutputFile <<_cInternetPW  <<endl;
 
 // 파일 닫기
 OutputFile.close();
 return true;
}

bool clFileClass::cAccount_Input(char *_cAccount)
{
 char cTemp[120];
 char bTemp;
 int iTemp;

 ifstream InputFile;
 InputFile.open(_cAccount);
 if(!InputFile)
 {
  cout <<"***********************n"
    <<" File을 열 수 없음n"
    <<"***********************n"<<endl;
  return false;
 }
 cout <<"***********************n";
 // 개인 정보
 for(int i=0; i<3; i++)
 {
  InputFile>>cTemp;
  cout <<cTemp<<endl;
 }
 cout <<"***********************n";
 // 계좌정보
 InputFile>>bTemp;
 cout <<bTemp<<endl;
 for(int i=0; i<3; i++)
 {
  InputFile>>cTemp;
  cout <<cTemp<<endl;
 }
 InputFile>>iTemp;
 cout <<iTemp<<endl;
 cout <<"***********************n";
 // 카드정보
 InputFile>>bTemp;
 cout <<bTemp<<endl;
 for(int i=0; i<2; i++)
 {
  InputFile>>cTemp;
  cout <<cTemp<<endl;
 }
 cout <<"***********************n";
 // 통신정보
 InputFile>>bTemp;
 cout <<bTemp<<endl;
 for(int i=0; i<2; i++)
 {
  InputFile>>cTemp;
  cout <<cTemp<<endl;
 }
 cout <<"***********************n";
 cout <<endl;
}

int main(void)
{
 clFileClass clFile;

 cout <<"*파일 검색을 시작합니다."<<endl;
 clFile.cAccount_Insp("1111-2222-3333-4444-55");
 cout <<endl;
 
 cout <<"*파일 생성을 시작합니다."<<endl;
 clFile.cAccount_Make("1111-2222-3333-4444-55");
 cout <<endl;
 
 cout <<"*파일에 Data를 넣습니다."<<endl;
 clFile.cAccount_Output("신동석", "100123-1001111", "대전시_유성구_대정동_68-1번지_103호", true, "농협", "1111-2222-3333-4444-55", "4321", 3000, true, "1212-3434-4545-6565", "1134", true, "memory304", "6645");
 cout<<endl;

 cout <<"*파일의 Data를 불러옵니다."<<endl;
 clFile.cAccount_Input("1111-2222-3333-4444-55");
 cout<<endl;

 return 0;
}

번호 제목 글쓴이 날짜 조회 수
29 [CPP] file 입출력 : space data file simpled 2013.06.23 5257
28 [CPP] 1차 방정식을 통한 y값 구하기 simpled 2013.06.23 5777
27 [CPP] Vector 계산 클래스 (v2.0) file simpled 2013.06.23 4675
26 [CPP] 자리수 표현 simpled 2013.06.23 5618
25 [CPP] 각도 클래스(+ 아크탄젠트 리턴값 조정) file simpled 2013.06.23 6024
24 [CPP] 벡터 계산 클래스 file simpled 2013.06.23 6090
23 [CPP] file 입출력 simpled 2013.06.23 4964
22 [CPP] 수치해석 : Rectangle Method 구분구적분 (적분 프로그래밍) simpled 2013.06.23 8111
21 [CPP] 분포하중 _ Beam의 SFD, BMD 값 simpled 2013.06.23 6471
20 [CPP] OOP6. CPP Programming :: Virtual Banking system PPT [끝] file 심플디 2013.06.23 6607
19 [CPP] OOP6. CPP Programming :: Virtual Banking system v3.8 file simpled 2013.06.23 5920
18 [CPP] OOP6. CPP Programming :: Virtual Banking system 모듈프로그램들 file simpled 2013.06.23 5244
17 [CPP] OOP6. CPP Programming :: Virtual Banking system v3.7 file simpled 2013.06.23 5954
16 [CPP] OOP6. CPP Programming :: Virtual Banking system v3.6 file simpled 2013.06.23 6287
15 [CPP] OOP6. CPP Programming :: Virtual Banking system v3.5.1 file simpled 2013.06.23 6442
14 [CPP] OOP6. CPP Programming :: Virtual Banking system v3.5 file simpled 2013.06.23 6620
13 [CPP] -----------------------------------절취선----------------------------------- simpled 2013.06.23 5830
12 [CPP] Banksys 휴식 simpled 2013.06.23 6496
11 [CPP] OOP5. CPP Programming :: Virtual Banking system v3.0.2 [Class design3. String Sorting] simpled 2013.06.23 5612
» [CPP] OOP5. CPP Programming :: Virtual Banking system v3.0.2 [Class design2. File I/O] simpled 2013.06.23 6548