Q&A

  • path를 나누기..
C/C++언어에선 _splitpath (VC/C++기준)란 함수처럼,

만약,,

'c:\windows\temp.dat' 라고 있으면,

drive변수에 c:
directory변수에 windows\
파일이름변수에 temp
파일확장명변수에 dat

델파이에선 이렇게 분간해주는 함수는 없나요?

감사합니다.
3  COMMENTS
  • Profile
    이용운 2004.01.20 00:17

    procedure TForm1.splitpath(const FileName: string; var Adrive, ADir, AFileName ,Aext :string);
      var
      I,j,K: Integer;
    begin
      I := LastDelimiter( DriveDelim, FileName);

      J := LastDelimiter('.' + PathDelim + DriveDelim, FileName);

      K := LastDelimiter( PathDelim + DriveDelim, FileName);

      Adrive :=  Copy(FileName, 1, I);

      ADir :=copy(FileName, i+2, K-i-1);

      AFileName:= copy(FileName,K+1,J-K-1);

      if (J > 0) and (FileName[J] = '.') then
        Aext := Copy(FileName, J+1, MaxInt)
      else
        Aext := '';

    end;

    대충 만들어 봤습니다만...^^
  • Profile
    시나브로 2004.01.19 23:15
    function ExtractFileDrive(const FileName: string): string;
    function ExtractFilePath(const FileName: string): string;
    function ExtractFileName(const FileName: string): string;
    function ExtractFileExt(const FileName: string): string;

    함수가 있습니다.

  • Profile
    ^ㅡ^ 2004.01.19 23:14


    답변이 될련지 모르겠습니다.

      ExtractFileName('c:\windows\temp.dat' )
      ExtractFileDir('c:\windows\temp.dat' )
      ExtractFileDrive('c:\windows\temp.dat' )

    ExtractFile 이쪽함수를 사용하시면 될꺼 같은데...
    도움이 되길 바랍니다.

    즐코하세요