|
김영찬 님이 쓰신 글 :
: 안녕하세요..
: 전 이제 막 C++을 시작한 허접입다..
: 고수님들의 도움을 받고자..
: 이렇게 글을 남김니다.
:
: 로그 파일 불러오는 코드입니다.
: ---------------------------------------------------------------
: fp2=fopen("Text.log","r");
:
: ---------------------------------------------------------------
:
: 파일을 불러와서 그 값으로 입력받을려고 하는데요...
:
: Log파일 형식은 ( 0:0:0:0...)이런식으로 되어있는데요..
:
: ":"까지 정수값을 하나하나 입력 받을려고 합니다.
: 근데 잘모르겠네요..
:
: 좀 알려주세요..
빌더에서는 과거의 지금 쓰시고자 하는 fopen도 지원하지만
좀더 편리하게 사용할수 있는
FileOpen 함수를 이용하시는걸 추천 하고 싶습니다.
예문은 다음과 같습니다.
int iFileHandle;
int iFileLength;
int iBytesRead;
char *pszBuffer;
if (OpenDialog1->Execute())
{
try
{
iFileHandle = FileOpen(OpenDialog1->FileName, fmOpenRead);
iFileLength = FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
pszBuffer = new char[iFileLength+1];
iBytesRead = FileRead(iFileHandle, pszBuffer, iFileLength);
FileClose(iFileHandle);
for (int i=0;i<iBytesRead;i++)
{
StringGrid1->RowCount += 1;
StringGrid1->Cells[1][i+1] = pszBuffer[i];
StringGrid1->Cells[2][i+1] = IntToStr((int)pszBuffer[i]);
}
delete [] pszBuffer;
}
catch(...)
{
Application->MessageBox("Can't perform one of the following file operations: Open, Seek, Read, Close.", "File Error", IDOK);
}
}
|