Класс CPathT
Этот класс представляет путь.
Внимание
Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.
Синтаксис
template <typename StringType>
class CPathT
Параметры
StringType
Строковый класс ATL/MFC, используемый для пути (см. раздел CStringT).
Участники
Общедоступные определения типов
Имя | Описание |
---|---|
CPathT::P CXSTR | Тип строки константы. |
CPathT::P XSTR | Тип string. |
CPathT::XCHAR | Тип символа. |
Открытые конструкторы
Имя | Описание |
---|---|
CPathT::CPathT | Конструктор пути. |
Открытые методы
Имя | Описание |
---|---|
CPathT::AddBackslash | Вызовите этот метод, чтобы добавить обратную косую черту в конец строки, чтобы создать правильный синтаксис для пути. |
CPathT::AddExtension | Вызовите этот метод, чтобы добавить расширение файла в путь. |
CPathT::Append | Вызовите этот метод, чтобы добавить строку к текущему пути. |
CPathT::BuildRoot | Вызовите этот метод, чтобы создать корневой путь из заданного номера диска. |
CPathT::Канонизация | Вызовите этот метод, чтобы преобразовать путь в каноническую форму. |
CPathT::Combine | Вызовите этот метод, чтобы объединить строку, представляющую имя каталога и строку, представляющую имя пути к файлу в один путь. |
CPathT::CommonPrefix | Вызовите этот метод, чтобы определить, использует ли указанный путь общий префикс с текущим путем. |
CPathT::CompactPath | Вызовите этот метод, чтобы усечь путь к файлу в пределах заданной ширины пикселей, заменив компоненты пути многоточием. |
CPathT::CompactPathEx | Вызовите этот метод, чтобы усечь путь к файлу для размещения в заданном количестве символов, заменив компоненты пути многоточием. |
CPathT::FileExists | Вызовите этот метод, чтобы проверить, существует ли файл по этому имени пути. |
CPathT::FindExtension | Вызовите этот метод, чтобы найти позицию расширения файла в пути. |
CPathT::FindFileName | Вызовите этот метод, чтобы найти позицию имени файла в пути. |
CPathT::GetDriveNumber | Вызовите этот метод, чтобы найти путь к букве диска в диапазоне от "A" до "Z" и вернуть соответствующий номер диска. |
CPathT::GetExtension | Вызовите этот метод, чтобы получить расширение файла из пути. |
CPathT::IsDirectory | Вызовите этот метод, чтобы проверить, является ли путь допустимым каталогом. |
CPatht::IsFileSpec | Вызовите этот метод для поиска пути для любых символов с разделителями пути (например, : или \ ). Если символы с разделителями пути отсутствуют, путь считается путь к спецификации файла. |
CPathT::IsPrefix | Вызовите этот метод, чтобы определить, содержит ли путь допустимый префикс типа, переданного pszPrefix. |
CPathT::IsRelative | Вызовите этот метод, чтобы определить, является ли путь относительным. |
CPathT::IsRoot | Вызовите этот метод, чтобы определить, является ли путь корнем каталога. |
CPathT::IsSameRoot | Вызовите этот метод, чтобы определить, имеет ли другой путь общий корневой компонент с текущим путем. |
CPatht::IsUNC | Вызовите этот метод, чтобы определить, является ли путь допустимым UNC (соглашение об универсальном именовании) для сервера и общего ресурса. |
CPathT::IsUNCServer | Вызовите этот метод, чтобы определить, является ли путь допустимым UNC (соглашение об универсальном именовании) только для сервера. |
CPathT::IsUNCServerShare | Вызовите этот метод, чтобы определить, является ли путь допустимым UNC (соглашение об универсальном именовании) общей папкой, \\server\share . |
CPathT::MakePretty | Вызовите этот метод, чтобы преобразовать путь ко всем строчным символам, чтобы обеспечить согласованный внешний вид пути. |
CPathT::MatchSpec | Вызовите этот метод для поиска пути к строке, содержащей тип совпадения с подстановочными знаками. |
CPathT::QuoteSpaces | Вызовите этот метод, чтобы заключить путь в кавычки, если он содержит пробелы. |
CPathT::RelativePathTo | Вызовите этот метод, чтобы создать относительный путь из одного файла или папки в другой. |
CPathT::RemoveArgs | Вызовите этот метод, чтобы удалить все аргументы командной строки из пути. |
CPathT::RemoveBackslash | Вызовите этот метод, чтобы удалить конечную обратную косую черту из пути. |
CPathT::RemoveBlanks | Вызовите этот метод, чтобы удалить все начальные и конечные пробелы из пути. |
CPathT::RemoveExtension | Вызовите этот метод, чтобы удалить расширение файла из пути, если он есть. |
CPathT::RemoveFileSpec | Вызовите этот метод, чтобы удалить имя конечного файла и обратную косую черту из пути, если он имеет их. |
CPathT::RenameExtension | Вызовите этот метод, чтобы заменить расширение имени файла в пути новым расширением. Если имя файла не содержит расширения, расширение будет присоединено к концу строки. |
CPathT::SkipRoot | Вызовите этот метод, чтобы проанализировать путь, игнорируя букву диска или части пути UNC-сервера или общего ресурса. |
CPathT::StripPath | Вызовите этот метод, чтобы удалить часть пути полного пути и имени файла. |
CPathT::StripToRoot | Вызовите этот метод, чтобы удалить все части пути, кроме корневой информации. |
CPathT::UnquoteSpaces | Вызовите этот метод, чтобы удалить кавычки из начала и конца пути. |
Открытые операторы
Имя | Описание |
---|---|
CPathT::operator const StringType & | Этот оператор позволяет объекту обрабатываться как строка. |
CPathT::operator CPathT::P CXSTR | Этот оператор позволяет объекту обрабатываться как строка. |
CPathT::operator StringType & | Этот оператор позволяет объекту обрабатываться как строка. |
CPathT::operator += | Этот оператор добавляет строку к пути. |
Открытые члены данных
Имя | Описание |
---|---|
CPathT::m_strPath | Путь. |
Замечания
CPath
, CPathA
и CPathW
являются экземплярами CPathT
, определенными следующим образом:
typedef CPathT< CString > CPath;
typedef CPathT< CStringA > CPathA;
typedef CPathT< CStringW > CPathW;
Требования
Заголовок: atlpath.h
CPathT::AddBackslash
Вызовите этот метод, чтобы добавить обратную косую черту в конец строки, чтобы создать правильный синтаксис для пути. Если путь уже имеет конечную обратную косую черту, обратная косая черта не будет добавлена.
void AddBackslash();
Замечания
Дополнительные сведения см. в разделе PathAddBackSlash.
CPathT::AddExtension
Вызовите этот метод, чтобы добавить расширение файла в путь.
BOOL AddExtension(PCXSTR pszExtension);
Параметры
pszExtension
Расширение файла, добавляемого.
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathAddExtension.
CPathT::Append
Вызовите этот метод, чтобы добавить строку к текущему пути.
BOOL Append(PCXSTR pszMore);
Параметры
pszMore
Добавляемая строка.
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathAppend.
CPathT::BuildRoot
Вызовите этот метод, чтобы создать корневой путь из заданного номера диска.
void BuildRoot(int iDrive);
Параметры
iDrive
Номер диска (0 , A:
1 — B:
и т. д.).
Замечания
Дополнительные сведения см. в разделе PathBuildRoot.
CPathT::Канонизация
Вызовите этот метод, чтобы преобразовать путь в каноническую форму.
void Canonicalize();
Замечания
Дополнительные сведения см. в разделе PathCanonicalize.
CPathT::Combine
Вызовите этот метод, чтобы объединить строку, представляющую имя каталога и строку, представляющую имя пути к файлу в один путь.
void Combine(PCXSTR pszDir, PCXSTR pszFile);
Параметры
pszDir
Путь к каталогу.
pszFile
Путь к файлу.
Замечания
Дополнительные сведения см. в разделе PathCombine.
CPathT::CommonPrefix
Вызовите этот метод, чтобы определить, использует ли указанный путь общий префикс с текущим путем.
CPathT<StringType> CommonPrefix(PCXSTR pszOther);
Параметры
pszOther
Путь для сравнения с текущим.
Возвращаемое значение
Возвращает общий префикс.
Замечания
Префикс является одним из следующих типов: C:\\", ".", "..", ".". \\". Дополнительные сведения см. в разделе PathCommonPrefix.
CPathT::CompactPath
Вызовите этот метод, чтобы усечь путь к файлу в пределах заданной ширины пикселей, заменив компоненты пути многоточием.
BOOL CompactPath(HDC hDC, UINT nWidth);
Параметры
hDC
Контекст устройства, используемый для метрик шрифта.
nWidth
Ширина в пикселях, в которую будет вынуждена поместиться строка.
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathCompactPath.
CPathT::CompactPathEx
Вызовите этот метод, чтобы усечь путь к файлу для размещения в заданном количестве символов, заменив компоненты пути многоточием.
BOOL CompactPathEx(UINT nMaxChars, DWORD dwFlags = 0);
Параметры
nMaxChars
Максимальное число символов, содержащихся в новой строке, включая завершающий символ NULL.
dwFlags
Зарезервировано.
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathCompactPathEx.
CPathT::CPathT
Конструктор.
CPathT(PCXSTR pszPath);
CPathT(const CPathT<StringType>& path);
CPathT() throw();
Параметры
pszPath
Указатель на строку пути.
path
Строка пути.
CPathT::FileExists
Вызовите этот метод, чтобы проверить, существует ли файл по этому имени пути.
BOOL FileExists() const;
Возвращаемое значение
Возвращает значение TRUE, если файл существует, значение FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathFileExists.
CPathT::FindExtension
Вызовите этот метод, чтобы найти позицию расширения файла в пути.
int FindExtension() const;
Возвращаемое значение
Возвращает позицию "." перед расширением. Если расширение не найдено, возвращает значение -1.
Замечания
Дополнительные сведения см. в разделе PathFindExtension.
CPathT::FindFileName
Вызовите этот метод, чтобы найти позицию имени файла в пути.
int FindFileName() const;
Возвращаемое значение
Возвращает позицию имени файла. Если имя файла не найдено, возвращает значение -1.
Замечания
Дополнительные сведения см. в разделе PathFindFileName.
CPathT::GetDriveNumber
Вызовите этот метод, чтобы найти путь к букве диска в диапазоне от "A" до "Z" и вернуть соответствующий номер диска.
int GetDriveNumber() const;
Возвращаемое значение
Возвращает число диска в виде целого числа от 0 до 25 (соответствующее "A" до Z), если путь имеет букву диска или -1 в противном случае.
Замечания
Дополнительные сведения см. в разделе PathGetDriveNumber.
CPathT::GetExtension
Вызовите этот метод, чтобы получить расширение файла из пути.
StringType GetExtension() const;
Возвращаемое значение
Возвращает расширение файла.
CPathT::IsDirectory
Вызовите этот метод, чтобы проверить, является ли путь допустимым каталогом.
BOOL IsDirectory() const;
Возвращаемое значение
Возвращает ненулевое значение (16), если путь является каталогом, значение FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsDirectory.
CPatht::IsFileSpec
Вызовите этот метод для поиска пути для любых символов с разделителями пути (например, :
или \
). Если символы с разделителями пути отсутствуют, путь считается путь к спецификации файла.
BOOL IsFileSpec() const;
Возвращаемое значение
Возвращает значение TRUE, если в пути нет символов с разделителями пути или FALSE, если символы с разделителями пути отсутствуют.
Замечания
Дополнительные сведения см. в разделе PathIsFileSpec.
CPathT::IsPrefix
Вызовите этот метод, чтобы определить, содержит ли путь допустимый префикс типа, переданного pszPrefix.
BOOL IsPrefix(PCXSTR pszPrefix) const;
Параметры
pszPrefix
Префикс, для которого требуется выполнить поиск. Префикс является одним из следующих типов: C:\\", ".", "..", ".". \\".
Возвращаемое значение
Возвращает значение TRUE, если путь содержит префикс или FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsPrefix.
CPathT::IsRelative
Вызовите этот метод, чтобы определить, является ли путь относительным.
BOOL IsRelative() const;
Возвращаемое значение
Возвращает значение TRUE, если путь является относительным или FALSE, если он является абсолютным.
Замечания
Дополнительные сведения см. в разделе PathIsRelative.
CPathT::IsRoot
Вызовите этот метод, чтобы определить, является ли путь корнем каталога.
BOOL IsRoot() const;
Возвращаемое значение
Возвращает значение TRUE, если путь является корнем или FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsRoot.
CPathT::IsSameRoot
Вызовите этот метод, чтобы определить, имеет ли другой путь общий корневой компонент с текущим путем.
BOOL IsSameRoot(PCXSTR pszOther) const;
Параметры
pszOther
Другой путь.
Возвращаемое значение
Возвращает значение TRUE, если обе строки имеют один и тот же корневой компонент или FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsSameRoot.
CPatht::IsUNC
Вызовите этот метод, чтобы определить, является ли путь допустимым UNC (соглашение об универсальном именовании) для сервера и общего ресурса.
BOOL IsUNC() const;
Возвращаемое значение
Возвращает значение TRUE, если путь является допустимым UNC-путем или false в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsUNC.
CPathT::IsUNCServer
Вызовите этот метод, чтобы определить, является ли путь допустимым UNC (соглашение об универсальном именовании) только для сервера.
BOOL IsUNCServer() const;
Возвращаемое значение
Возвращает значение TRUE, если строка является допустимым UNC-путем только для сервера (без имени общей папки) или FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsUNCServer.
CPathT::IsUNCServerShare
Вызовите этот метод, чтобы определить, является ли путь допустимым UNC (соглашение об универсальном именовании) путь к общей папке \\ server\ .
BOOL IsUNCServerShare() const;
Возвращаемое значение
Возвращает значение TRUE, если путь находится в форме \\ серверной\ общей папки или FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathIsUNCServerShare.
CPathT::m_strPath
Путь.
StringType m_strPath;
Замечания
StringType
— параметр CPathT
шаблона .
CPathT::MakePretty
Вызовите этот метод, чтобы преобразовать путь ко всем строчным символам, чтобы обеспечить согласованный внешний вид пути.
BOOL MakePretty();
Возвращаемое значение
Возвращает значение TRUE, если путь был преобразован или false в противном случае.
Замечания
Дополнительные сведения см. в разделе PathMakePretty.
CPathT::MatchSpec
Вызовите этот метод для поиска пути к строке, содержащей тип совпадения с подстановочными знаками.
BOOL MatchSpec(PCXSTR pszSpec) const;
Параметры
pszSpec
Указатель на строку, завершающуюся значением NULL, с типом файла, для которого требуется выполнить поиск. Например, чтобы проверить, является ли файл в текущем пути файлом DOC, pszSpec должен иметь значение *.doc.
Возвращаемое значение
Возвращает значение TRUE, если строка совпадает или FALSE в противном случае.
Замечания
Дополнительные сведения см. в разделе PathMatchSpec.
CPathT::operator +=
Этот оператор добавляет строку к пути.
CPathT<StringType>& operator+=(PCXSTR pszMore);
Параметры
pszMore
Добавляемая строка.
Возвращаемое значение
Возвращает обновленный путь.
CPathT::operator const StringType &
Этот оператор позволяет объекту обрабатываться как строка.
operator const StringType&() const throw();
Возвращаемое значение
Возвращает строку, представляющую текущий путь, управляемый этим объектом.
CPathT::operator CPathT::P CXSTR
Этот оператор позволяет объекту обрабатываться как строка.
operator PCXSTR() const throw();
Возвращаемое значение
Возвращает строку, представляющую текущий путь, управляемый этим объектом.
CPathT::operator StringType &
Этот оператор позволяет объекту обрабатываться как строка.
operator StringType&() throw();
Возвращаемое значение
Возвращает строку, представляющую текущий путь, управляемый этим объектом.
CPathT::P CXSTR
Тип строки константы.
typedef StringType::PCXSTR PCXSTR;
Замечания
StringType
— параметр CPathT
шаблона .
CPathT::P XSTR
Тип string.
typedef StringType::PXSTR PXSTR;
Замечания
StringType
— параметр CPathT
шаблона .
CPathT::QuoteSpaces
Вызовите этот метод, чтобы заключить путь в кавычки, если он содержит пробелы.
void QuoteSpaces();
Замечания
Дополнительные сведения см. в разделе PathQuoteSpaces.
CPathT::RelativePathTo
Вызовите этот метод, чтобы создать относительный путь из одного файла или папки в другой.
BOOL RelativePathTo(
PCXSTR pszFrom,
DWORD dwAttrFrom,
PCXSTR pszTo,
DWORD dwAttrTo);
Параметры
pszFrom
Начало относительного пути.
dwAttrFrom
Атрибуты файла pszFrom. Если это значение содержит FILE_ATTRIBUTE_DIRECTORY, pszFrom считается каталогом; в противном случае pszFrom считается файлом.
pszTo
Конечная точка относительного пути.
dwAttrTo
Атрибуты файла pszTo. Если это значение содержит FILE_ATTRIBUTE_DIRECTORY, pszTo считается каталогом; в противном случае pszTo считается файлом.
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathRelativePathTo.
CPathT::RemoveArgs
Вызовите этот метод, чтобы удалить все аргументы командной строки из пути.
void RemoveArgs();
Замечания
Дополнительные сведения см. в разделе PathRemoveArgs.
CPathT::RemoveBackslash
Вызовите этот метод, чтобы удалить конечную обратную косую черту из пути.
void RemoveBackslash();
Замечания
Дополнительные сведения см. в разделе PathRemoveBackslash.
CPathT::RemoveBlanks
Вызовите этот метод, чтобы удалить все начальные и конечные пробелы из пути.
void RemoveBlanks();
Замечания
Дополнительные сведения см. в разделе PathRemoveBlanks.
CPathT::RemoveExtension
Вызовите этот метод, чтобы удалить расширение файла из пути, если он есть.
void RemoveExtension();
Замечания
Дополнительные сведения см. в разделе PathRemoveExtension.
CPathT::RemoveFileSpec
Вызовите этот метод, чтобы удалить имя конечного файла и обратную косую черту из пути, если он имеет их.
BOOL RemoveFileSpec();
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathRemoveFileSpec.
CPathT::RenameExtension
Вызовите этот метод, чтобы заменить расширение имени файла в пути новым расширением. Если имя файла не содержит расширения, расширение будет присоединено к концу пути.
BOOL RenameExtension(PCXSTR pszExtension);
Параметры
pszExtension
Новое расширение имени файла, перед которым предшествует символ "." .
Возвращаемое значение
Возвращает значение TRUE при успешном выполнении, false при сбое.
Замечания
Дополнительные сведения см. в разделе PathRenameExtension.
CPathT::SkipRoot
Вызовите этот метод, чтобы проанализировать путь, игнорируя букву диска или серверные части пути UNC (универсальное соглашение об именовании).
int SkipRoot() const;
Возвращаемое значение
Возвращает позицию начала подката, который следует корневому каталогу (буква диска или UNC-сервер или общий ресурс).
Замечания
Дополнительные сведения см. в разделе PathSkipRoot.
CPathT::StripPath
Вызовите этот метод, чтобы удалить часть пути полного пути и имени файла.
void StripPath();
Замечания
Дополнительные сведения см. в разделе PathStripPath.
CPathT::StripToRoot
Вызовите этот метод, чтобы удалить все части пути, кроме корневой информации.
BOOL StripToRoot();
Возвращаемое значение
Возвращает значение TRUE, если в пути найдена допустимая буква диска или значение FALSE.
Замечания
Дополнительные сведения см. в разделе PathStripToRoot.
CPathT::UnquoteSpaces
Вызовите этот метод, чтобы удалить кавычки из начала и конца пути.
void UnquoteSpaces();
Замечания
Дополнительные сведения см. в разделе PathUnquoteSpaces.
CPathT::XCHAR
Тип символа.
typedef StringType::XCHAR XCHAR;
Замечания
StringType
— параметр CPathT
шаблона .