GnuSmalltalkUsersGuide:BaseChapter 074
- FilePath
FilePath
네임스페이스 Smalltalk에 정의됨
슈퍼클래스: Object
범주: 스트림-파일
- 나는 경로를 포함해 파일명의 구문을 노출한다. 나는 그러한 경로를 구성요소로 나누어 조작하는 방법을 알고 있다. 뿐만 아니라 (실제와 가상) 파일의 크기나 타임스탬프와 같은 정보를 보여준다.
FilePath 클래스: 파일명 관리
append: fileName to: directory
'directory'로 명명된 디렉터리에 상주하는 'fileName'로 명명된 파일명을 응답하라.
extensionFor: aString
'aString'으로 명명된 파일의 확장자를 응답하라. 주목: 확장자는 앞에 붙은 점까지 포함한다.
fullNameFor: aString
'.'와 '..' 디렉터리 엔트리를 분석하여 'aString'이라 불리는 파일의 전체 경로를 응답하고 결과를 응답하라. '/..'는 '/'와 같다.
pathFor: aString
'aString'이라는 파일명의 경로를 알아내고 결과를 응답하라. 루트 디렉터리를 제외하곤 마지막 슬래시가 제거된다.
pathFor: aString ifNone: aBlock
'aString'이라는 파일명의 경로를 알아내고 결과를 응답하라. 루트 디렉터리를 제외하곤 마지막 슬래시가 제거된다. 해당하는 경로가 없다면 aBlock을 평가하고 결과를 리턴하라.
pathFrom: srcName to: destName
현재 디렉터리가 srcName의 디렉터리일 때 destName에 대한 상대 경로를 응답하라.
stripExtensionFrom: aString
'aString'이라는 파일명에서 확장자를 제거하고 결과를 응답하라.
stripFileNameFor: aString
'aString'이라는 파일명의 경로를 알아내고 결과를 마지막 슬래시를 포함한 디렉터리명으로서 응답하라.
stripPathFrom: aString
'aString'이라는 파일명에서 경로를 제거하고 파일명과 확장자를 모두 응답하라.
FilePath 클래스: 아직 분류되지 않음
isAbsolute: aString
aString이 절대 경로인지 응답하라.
FilePath: 접근하기
at: aName
수신자가 나타낸 디렉터리에 'aName'으로 명명된 파일에 적절한 File 또는 Directory 객체를 응답하라.
creationTime
수신자에 의해 식별된 파일의 생성 시간을 응답하라. 일부 운영체제에서는 마지막 변경 시간이 해당될 수도 있다 ('마지막 변경 시간'은 권한, 소유권과 같은 개념과 관련이 있다).
group: aString
수신자에 의해 식별된 파일의 그룹을 aString가 되도록 설정하라.
includes: aName
수신자가 나타낸 디렉터리에 'aName'으로 명명된 파일이 존재하는지 응답하라.
lastAccessTime
수신자에 의해 식별된 파일의 마지막 접근 시간을 응답하라.
lastAccessTime: aDateTime
수신자에 해당하는 파일의 마지막 접근 시간을 aDateTime이 되도록 업데이트하라.
lastAccessTime: accessDateTime lastModifyTime: modifyDateTime
수신자에 해당하는 파일의 타임스탬프가 accessDateTime과 modifyDateTime이 되도록 업데이트하라.
lastChangeTime
수신자에 의해 식별된 파일의 마지막 변경 시간을 응답하라 ('마지막 변경 시간'은 권한, 소유권과 같은 개념과 관련이 있다). 일부 운영체제에서는 파일 생성 시간이 해당될 수도 있다.
lastModifyTime
수신자에 의해 식별된 파일의 마지막 수정 시간을 응답하라 ('마지막 수정 시간'은 실제 파일 내용과 관련이 있다).
lastModifyTime: aDateTime
수신자에 해당하는 파일의 마지막 수정 타임스탬프가 aDateTime이 되도록 업데이트하라.
mode
수신자에 의해 식별된 파일에 대한 권한 비트를 응답하라.
mode: anInteger
수신자에 의해 식별된 파일에 대한 권한 비트를 anInteger가 되도록 설정하라.
owner: aString
수신자에 의해 식별된 파일의 소유주를 aString이 되도록 설정하라.
owner: ownerString group: groupString
수신자에 의해 식별된 파일의 소유주와 그룹이 aString이 되도록 설정하라.
pathTo: destName
수신자부터 destName까지 상대 경로를 계산하라.
refresh
수신자에 대한 통계를 refresh하라.
size
수신자에 의해 식별된 파일의 크기를 응답하라.
FilePath: 변환하기
asFile
수신자를 응답하라.
FilePath: 장식
all
반복 메서드를 위해 디렉터리로 재귀적 하향 방식을 제공하게 될 수신자의 decorator를 리턴하라.
FilePath: 디렉터리 조작
createDirectories
수신자를 모든 부모와 함께 하나의 디렉터리로서 생성하라.
createDirectory
수신자를 모든 부모와 함께 하나의 디렉터리로서 생성하라.
nameAt: aName
수신자가 나타낸 디렉터리에 상주하는 'aName'으로 명명된 파일에 대한 FilePath를 응답하라.
FilePath: 열거하기=
allFilesMatching: aPattern do: aBlock
수신자가 명명한 디렉터리에 aPattern에 일치하는(String>>-#match:에 따라) File 객체 상에서 aBlock을 평가하라. 디렉터리로 재귀적으로 하향하라.
directories
수신자가 나타낸 디렉터리의 하위디렉터리를 위한 Directory 객체로 된 Array를 응답하라.
do: aBlock
수신자가 나타낸 디렉터리 내 각 파일마다 한 번씩 aBlock을 평가하고 그 이름을 전달하라.
entries
수신자가 나타낸 디렉터리의 내용에 대한 File 또는 Directory 객체로 된 Array를 응답하라.
entryNames
수신자가 나타낸 디렉터리 내의 파일명으로 된 Array를 응답하라.
files
수신자가 나타낸 디렉터리의 내용에 대한 File 객체로 된 Array를 응답하라.
filesMatching: aPattern
수신자가 나타낸 디렉터리 내 각 파일마다 한 번씩 aBlock을 평가하고 File 또는 Directory 객체를 aBlock으로 전달하라. aBlock이 true를 리턴하는 파일의 *이름*을 리턴하라.
filesMatching: aPattern do: block
수신자가 명명한 디렉터리에서 aPattern에 (String>>-#match:에 따라) 일치하는 File 객체 상에서 블록을 평가하라.
namesDo: aBlock
수신자가 나타낸 디렉터리 내 각 파일마다 aBlock을 한 번씩 평가하고 그 이름을 전달하라.
namesMatching: aPattern do: block
수신자가 명명한 디렉터리에서 aPattern에 (String>>-#match:에 따라) 일치하는 파일명에서 블록을 평가하라.
reject: aBlock
수신자가 나타낸 디렉터리 내 각 파일마다 aBlock을 한 번씩 평가하고 File 또는 Directory 객체를 aBlock으로 전달하라. aBlock이 true를 리턴하는 파일의 *이름*을 리턴하라.
select: aBlock
수신자가 나타낸 디렉터리 내 각 파일마다 aBlock을 한 번씩 평가하고 File 또는 Directory 객체를 aBlock으로 전달하라. aBlock이 true를 리턴하는 파일의 *이름*을 리턴하라.
FilePath: 파일명 관리
directory
수신자의 경로에 대한 Directory 객체를 응답하라.
extension
수신자의 확장자를 응답하라.
full
'.'와 '..' 디렉터리 엔트리를 분석하여 수신자의 전체 이름을 응답하고 결과를 응답하라. 이름이 유효하지 않은 경우 (예: '/usr/../../badname') nil을 응답하라.
fullName
수신자에 대한 전체 경로로 된 String을 응답하라 (#name과 동일; 해당 메서드의 오버라이드는 소용 없는 짓이다).
name
수신자에 대한 전체 경로로 된 String을 응답하라 (#fullName과 동일).
parent
수신자의 경로에 대한 Directory 객체를 응답하라.
path
(존재하는 경우) 수신자의 경로를 응답하라.
stripExtension
(존재하는 경우) 수신자의 경로와 파일명을 응답하라.
stripFileName
수신자의 경로를 응답하되 항시 디렉터리명(아마 '.'가 될 것이다)과 최종 디렉터리 구분자를 응답하라.
stripPath
수신자의 파일명과 확장자를 (존재하는 경우에) 응답하라.
FilePath: 파일 조작
contents
읽기만 가능한 FileStream을 수신자 상에 열어 내용을 읽고, 스트림을 닫은 후 내용을 응답하라.
fileIn
수신자를 file in하라.
open: mode
주어진 모드로 수신자를 열어라 (FileStream의 클래스 상수 메서드가 응답한대로).
open: mode ifFail: aBlock
주어진 모드로 수신자를 열어라 (FileStream의 클래스 상수 메서드가 응답한대로). 실패할 경우, aBlock을 평가하라.
open: class mode: mode ifFail: aBlock
주어진 모드로 수신자를 열어라 (FileStream의 클래스 상수 메서드가 응답한대로).
openDescriptor: mode
주어진 모드로 수신자를 열어라 (FileStream의 클래스 상수 메서드가 응답한대로).
openDescriptor: mode ifFail: aBlock
주어진 모드로 수신자를 열어라 (FileStream의 클래스 상수 메서드가 응답한대로). 실패할 경우, aBlock을 평가하라.
pathFrom: dirName
디렉터리 dirName부터 수신자까지 상대 경로를 계산하라.
readStream
읽기만 가능한 FileStream을 수신자 상에서 열어라.
remove
수신자에 의해 식별된 파일을 제거하라.
renameTo: newName
수신자에 의해 식별된 파일을 newName으로 재명명하라.
symlinkAs: destName
destName을 수신자의 심볼릭 링크로서 생성하라. 이에 적절한 상대 경로가 자동으로 계산된다.
symlinkFrom: srcName
수신자를 srcName으로부터 심볼릭 링크로 생성하라 (수신자의 경로에 대해 상대적).
touch
수신자에 해당하는 파일의 타임스탬프를 업데이트하라.
withReadStreamDo: aBlock
나에게서 열린 reading 스트림으로 aBlock을 호출하고, aBlock의 동적 범위(dynamic extent)가 끝날 때 닫아라.
withWriteStreamDo: aBlock
나에게서 열린 writing 스트림으로 aBlock을 호출하고, aBlock의 동적 범위(dynamic extent)가 끝날 때 닫아라.
writeStream
쓰기만 가능한 FileStream을 수신자 상에서 열어라.
FilePath: 인쇄하기
displayOn: aStream
수신자의 표현을 aStream 상에 인쇄하라..
printOn: aStream
수신자의 표현을 aStream 상에 인쇄하라..
FilePath: 아직 분류되지 않음
/ aName
수신자가 나타낸 디렉터리에 'aName'으로 명명된 파일에 적절한 File 또는 Directory 객체를 응답하라.
FilePath: 검사하기
exists
수신자에 포함된 이름으로 된 파일의 존재 유무를 응답하라.
isAbsolute
수신자가 절대 경로를 식별하는지 응답하라.
isAccessible
수신자에 포함된 이름으로 된 디렉터리의 존재 유무와 접근 가능성 여부를 응답하라.
isDirectory
수신자에 포함된 이름으로 된 파일의 존재 유무와 그것이 디렉터리를 식별하는지 응답하라.
isExecutable
수신자에 포함된 이름으로 된 파일의 존재 유무와 실행 가능성 여부를 응답하라.
isFile
수신자에 포함된 이름으로 된 파일의 존재 유무와 그것이 디렉터리를 식별하지 않는지를 응답하라.
isFileSystemPath
수신자가 실제 filesystem 경로에 일치하는지 응답하라.
isReadable
수신자에 포함된 이름으로 된 파일의 존재 유무와 읽기 가능성 여부를 응답하라.
isRelative
수신자가 상대 경로를 식별하는지 응답하라.
isSymbolicLink
수신자에 포함된 이름으로 된 파일의 존재 유무와 그것이 심볼릭 링크를 식별하는지 응답하라.
isWriteable
수신자에 포함된 이름으로 된 파일의 존재 유무와 쓰기 가능성 여부를 응답하라.
FilePath: 가상 filesystems
zip
해당 설명 없음.