Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Библиотека активных шаблонов (ATL) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.
Этот класс представляет путь.
Внимание
Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения 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шаблона .