게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C++ ifstream, ofstream 에러 처리에 관해서
게시물ID : programmer_2642짧은주소 복사하기
작성자 : 식인메뚜기
추천 : 0
조회수 : 998회
댓글수 : 0개
등록시간 : 2014/04/14 14:24:18
C++로 command line argument로 input filename, output filename을 string으로 받아

input file을 읽어서 적당한 가공을 하고 output file로 출력하는 프로그램을 짜고 있습니다.
지금 시도한 방법은 exception을 이용한 방법인데요, 코드가 이렇습니다:

====================
ifstream inputFile;
ofstream outputFile;

inputFile.exceptions( ifstream::failbit | ifstream::badbit );

try
{
  // open file, do stuff
  inputFile.open(inputFilename.c_str());
  cout << "Input file opened" << endl;

  outputFile.open(outputFilename.c_str());
  cout << "Output file opened" << endl;

  // ...
}
catch (const ifstream::failure &e)
{
  cerr << "Failed to open input file" << endl;
}


====================

발견한 문제점이 몇 가지 있는데요,
첫째로 input file을 읽다가 eof가 나오면 exception이 뜹니다.
둘째로 output file을 같은 방식으로 exception 정의 내리면 open 하자마자 exception이 뜹니다.
그래서 이 방법이 아닌 다른 방법으로 에러 처리를 하고 싶은데,
어떻게 하는 것이 좋을까요?

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호