|
님이 주신 답변은 Interger Data를 String에 넣는 방법입니다. 그것은 저도 알고 있는 내용이고요...
저는 String의 값은 포맷을 통해 Integer Data로 변환하고 싶은데요...히...
예전 도스버젼에서 사용되던 sscanf(const char *format,...)과 같은 함수요...쯥...
김백일 님이 쓰신 글 :
: 까마귀 님이 쓰신 글 :
: : 저는 계속 질문만 하는군요..^_^
: :
: : AnsiString을 이용하여 각종 정보를 ini화일에 저장한후 읽어들이려고 합니다.
: : 그런데 AnsiString Class에는 출력함수는 있는데 입력함수가 없어서...
: : 물론 AnsiString::Pos(), AnsiString::SubString와 StrToInt()를 이용하는 방법이 있지만,
: : 소스만 길어지는 듯하고, TIniFile::ReadInteger()를 이용하면, INI 화일의 줄이 많아져서
: : 별로 달갑지 않아어요...쯥.
: :
: :
: : void __fastcall TMain::FormCreate(TObject *Sender) {
: : TIniFile *ini;
: : String dPosMain="200,200,640,480";
: : ini=new TIniFile(ExtractFilePath(Application->ExeName)+"cmg.ini");
: : dPosMain=ini->ReadString("Main","Location",dPosMain);
: : delete ini;
: : _________________________________________________________________________
: : dPosMain.여기가 없어서 쯥...^_^!...("%d,%d,%d,%d",Top,Left,Height,Width);
: dPosMain.sprintf("%d,%d,%d,%d",Top,Left,Height,Width);
: //또는 dPosMain.printf("%d,%d,%d,%d",Top,Left,Height,Width);
: // 참고로 printf()는 final formatted string의 길이를 리턴합니다.
: //또는 dPosMain.Format("%d,%d,%d,%d", ARRAYOFCONST(((int)Top),((int)Left),((int)Height),((int)Width)));
: : -------------------------------------------------------------------------
: : }
: :
: : void __fastcall TMain::FormClose(TObject *Sender) {
: : TIniFile *ini;
: : String dPosMain;
: : ______________________________________________________
: : dPosMain.sprintf("%d,%d,%d,%d",Top,Left,Height,Width); //여기는 있는데....^_^!...
: : ------------------------------------------------------
: : ini=new TIniFile(ExtractFilePath(Application->ExeName)+"cmg.ini");
: : ini->WriteString("Main","Location",dPosMain);
: : delete ini;
: : }
|