XDrxAPI 21 个 Path 函数帮助手册
1函数名称: xdrx-path->unc
描述:
将本地路径转换为UNC网络路径格式
调用格式:
(xdrx-path->unc <路径字符串>)
参数说明:
* <路径字符串>: 要转换的本地路径(字符串)
返回值:
成功返回UNC路径字符串,失败返回nil
示例用法1:
(xdrx-path->unc "C:\\temp\\file.txt")
; 返回类似"\\\\计算机名\\temp\\file.txt"
示例用法2:
(xdrx-path->unc "\\\\server\\share\\file.txt")
; 直接返回原UNC路径
注意事项:
1. 支持本地路径和网络路径
2. 自动识别已为UNC路径的情况
3. 转换失败时返回nil
4. 结果可直接用于网络文件操作
5. 支持长路径和短路径格式
------------------------------------------------------------
2
函数名称: xdrx-path-absolute
描述:
将相对路径转换为绝对路径
调用格式:
(xdrx-path-absolute <相对路径> <基准路径>)
参数说明:
* <相对路径>: 要转换的相对路径(字符串)
* <基准路径>: 作为参考的基准路径(字符串)
返回值:
成功返回绝对路径字符串,失败返回nil
示例用法1:
(xdrx-path-absolute "..\\file.txt" "C:\\temp\\folder")
; 返回"C:\\temp\\file.txt"
示例用法2:
(xdrx-path-absolute "subdir\\file.txt" "C:\\temp")
; 返回"C:\\temp\\subdir\\file.txt"
注意事项:
1. 支持各种相对路径格式(../, ./等)
2. 基准路径必须是绝对路径
3. 转换失败时返回nil
4. 结果路径已规范化处理
5. 支持长路径和短路径格式
------------------------------------------------------------
3
函数名称: xdrx-path-backslash
描述:
添加或移除路径末尾的反斜杠
调用格式:
(xdrx-path-backslash <路径> )
参数说明:
* <路径>: 要处理的路径字符串
* : 可选参数,指定时移除反斜杠,否则添加反斜杠
返回值:
返回处理后的路径字符串
示例用法1:
(xdrx-path-backslash "C:\\temp")
; 返回"C:\\temp\\"
示例用法2:
(xdrx-path-backslash "C:\\temp\\" T)
; 返回"C:\\temp"
注意事项:
1. 自动判断路径是否需要添加/移除反斜杠
2. 空参数时默认添加反斜杠
3. 保持路径格式有效性
4. 支持网络路径和本地路径
5. 不改变路径其他部分
------------------------------------------------------------
4
函数名称: xdrx-path-compact
描述:
将路径字符串压缩到指定字符长度
调用格式:
(xdrx-path-compact <路径> <字符数>)
参数说明:
* <路径>: 要压缩的原始路径字符串
* <字符数>: 压缩后的最大字符数(正整数)
返回值:
成功返回压缩后的路径字符串,失败返回nil
示例用法1:
(xdrx-path-compact "C:\\Program Files\\Application\\data\\config.ini" 20)
; 可能返回"C:\\Progra...\\config.ini"
示例用法2:
(xdrx-path-compact "\\\\server\\share\\long\\path\\file.txt" 15)
; 可能返回"\\\\server...\\file.txt"
注意事项:
1. 保留路径首尾部分可见
2. 中间用省略号表示压缩部分
3. 字符数必须为正整数
4. 支持长路径和UNC路径
5. 压缩失败时返回nil
------------------------------------------------------------
5
函数名称: xdrx-path-extension
描述:
获取、修改或移除文件扩展名
调用格式:
(xdrx-path-extension <路径> [新扩展名])
参数说明:
* <路径>: 目标文件路径字符串
* [新扩展名]: 可选参数,指定时修改扩展名,不指定则移除扩展名
返回值:
返回处理后的路径字符串
示例用法1:
(xdrx-path-extension "C:\\temp\\file.txt")
; 返回"C:\\temp\\file" (移除扩展名)
示例用法2:
(xdrx-path-extension "C:\\temp\\file" ".doc")
; 返回"C:\\temp\\file.doc"
示例用法3:
(xdrx-path-extension "C:\\temp\\file.txt" "bak")
; 返回"C:\\temp\\file.bak"
注意事项:
1. 自动处理扩展名前的点号(可省略)
2. 无参数时移除扩展名
3. 支持所有标准路径格式
4. 不改变原路径其他部分
5. 结果路径保持有效性
------------------------------------------------------------
6
函数名称: xdrx-path->full
描述:
将路径转换为完整规范化格式
调用格式:
(xdrx-path->full <路径>)
参数说明:
* <路径>: 要转换的路径字符串
返回值:
成功返回完整路径字符串,失败返回nil
示例用法1:
(xdrx-path->full ".\\config.ini")
; 返回当前目录的完整路径如"C:\\project\\config.ini"
示例用法2:
(xdrx-path->full "..\\docs\\file.txt")
; 返回上级目录docs文件夹的完整路径
注意事项:
1. 解析相对路径为绝对路径
2. 移除路径中的"."和".."
3. 统一路径分隔符为反斜杠
4. 支持网络路径和本地路径
5. 路径不存在时仍可转换
------------------------------------------------------------
7
函数名称: xdrx-path-isnetwork
描述:
判断路径是否为网络路径
调用格式:
(xdrx-path-isnetwork <路径>)
参数说明:
* <路径>: 要检查的路径字符串
返回值:
是网络路径返回T,否则返回nil
示例用法1:
(xdrx-path-isnetwork "\\\\server\\share\\file.txt")
; 返回T
示例用法2:
(xdrx-path-isnetwork "C:\\temp\\file.txt")
; 返回nil
注意事项:
1. 仅检查路径格式,不验证网络可达性
2. 支持UNC路径和映射驱动器
3. 严格遵循Windows网络路径格式
4. 快速判断不涉及IO操作
5. 结果可直接用于条件判断
------------------------------------------------------------
8
函数名称: xdrx-path-isrelative
描述:
判断路径是否为相对路径
调用格式:
(xdrx-path-isrelative <路径>)
参数说明:
* <路径>: 要检查的路径字符串
返回值:
是相对路径返回T,否则返回nil
示例用法1:
(xdrx-path-isrelative ".\\config.ini")
; 返回T
示例用法2:
(xdrx-path-isrelative "C:\\temp\\file.txt")
; 返回nil
注意事项:
1. 严格区分相对路径和绝对路径
2. 支持所有标准相对路径格式
3. 不验证路径是否存在
4. 快速判断不涉及IO操作
5. 结果可直接用于条件判断
------------------------------------------------------------
9
函数名称: xdrx-path-isroot
描述:
判断路径是否为根目录
调用格式:
(xdrx-path-isroot <路径>)
参数说明:
* <路径>: 要检查的路径字符串
返回值:
是根目录返回T,否则返回nil
示例用法1:
(xdrx-path-isroot "C:\\")
; 返回T
示例用法2:
(xdrx-path-isroot "\\\\server\\share\\")
; 返回T
示例用法3:
(xdrx-path-isroot "C:\\temp")
; 返回nil
注意事项:
1. 严格区分根目录和非根目录
2. 支持本地驱动器根目录和网络共享根目录
3. 路径必须以反斜杠结尾
4. 不验证路径是否存在
5. 结果可直接用于条件判断
------------------------------------------------------------
10
函数名称: xdrx-path-issameroot
描述:
判断两个路径是否具有相同的根目录
调用格式:
(xdrx-path-issameroot <路径1> <路径2>)
参数说明:
* <路径1>: 第一个路径字符串
* <路径2>: 第二个路径字符串
返回值:
根目录相同返回T,否则返回nil
示例用法1:
(xdrx-path-issameroot "C:\\temp\\file1.txt" "C:\\docs\\file2.txt")
; 返回T
示例用法2:
(xdrx-path-issameroot "C:\\temp\\file.txt" "D:\\data\\file.txt")
; 返回nil
示例用法3:
(xdrx-path-issameroot "\\\\server\\share1\\file.txt" "\\\\server\\share2\\file.txt")
; 返回nil
注意事项:
1. 严格比较根目录是否相同
2. 支持本地驱动器和网络共享
3. 不验证路径是否存在
4. 区分大小写
5. 结果可直接用于条件判断
------------------------------------------------------------
11
函数名称: xdrx-path-isslow
描述:
判断路径是否指向慢速存储设备
调用格式:
(xdrx-path-isslow <路径>)
参数说明:
* <路径>: 要检查的路径字符串
返回值:
是慢速设备返回T,否则返回nil
示例用法1:
(xdrx-path-isslow "D:\\removable\\file.txt")
; 可能返回T(如果是U盘等移动设备)
示例用法2:
(xdrx-path-isslow "C:\\temp\\file.txt")
; 可能返回nil(如果是本地硬盘)
注意事项:
1. 基于Windows API的PathIsSlow判断
2. 慢速设备包括网络驱动器、可移动设备等
3. 需要实际访问设备进行检测
4. 结果可能因系统配置而异
5. 可用于优化IO操作策略
------------------------------------------------------------
12
函数名称: xdrx-path-isunc
描述:
判断路径是否为UNC格式的网络路径
调用格式:
(xdrx-path-isunc <路径>)
参数说明:
* <路径>: 要检查的路径字符串
返回值:
是UNC路径返回T,否则返回nil
示例用法1:
(xdrx-path-isunc "\\\\server\\share\\file.txt")
; 返回T
示例用法2:
(xdrx-path-isunc "C:\\temp\\file.txt")
; 返回nil
示例用法3:
(xdrx-path-isunc "\\\\?\\C:\\temp\\file.txt")
; 返回nil(长路径格式不是UNC)
注意事项:
1. 严格检查标准UNC格式(\\\\server\\share)
2. 不验证网络可达性
3. 区分UNC路径和其他网络路径格式
4. 快速判断不涉及IO操作
5. 结果可直接用于条件判断
------------------------------------------------------------
13
函数名称: xdrx-path-isurl
描述:
判断字符串是否为URL格式
调用格式:
(xdrx-path-isurl <字符串>)
参数说明:
* <字符串>: 要检查的字符串
返回值:
是URL格式返回T,否则返回nil
示例用法1:
(xdrx-path-isurl "http://www.example.com")
; 返回T
示例用法2:
(xdrx-path-isurl "https://api.example.com/v1/data")
; 返回T
示例用法3:
(xdrx-path-isurl "C:\\temp\\file.txt")
; 返回nil
注意事项:
1. 检查常见URL协议(http/https/ftp等)
2. 验证基本URL格式有效性
3. 不验证URL可达性
4. 快速判断不涉及网络请求
5. 结果可直接用于条件判断
------------------------------------------------------------
14
函数名称: xdrx-path->local
描述:
将网络路径转换为本地映射驱动器路径
调用格式:
(xdrx-path->local <网络路径>)
参数说明:
* <网络路径>: UNC格式的网络路径字符串
返回值:
成功返回映射的本地路径,失败返回nil
示例用法1:
(xdrx-path->local "\\\\server\\share\\file.txt")
; 可能返回"Z:\\file.txt"(如果已映射为Z盘)
示例用法2:
(xdrx-path->local "\\\\server2\\data\\config.ini")
; 可能返回nil(如果未映射)
注意事项:
1. 仅处理UNC格式网络路径
2. 依赖系统已建立的网络映射
3. 不验证路径是否存在
4. 保留路径相对部分不变
5. 结果可直接用于文件操作
------------------------------------------------------------
15
函数名称: xdrx-path->long
描述:
将路径转换为Windows长路径格式(超过260字符限制)
调用格式:
(xdrx-path->long <路径>)
参数说明:
* <路径>: 要转换的路径字符串
返回值:
成功返回长路径格式字符串,失败返回nil
示例用法1:
(xdrx-path->long "C:\\temp\\file.txt")
; 返回"\\\\?\\C:\\temp\\file.txt"
示例用法2:
(xdrx-path->long "..\\long\\path\\file.txt")
; 返回当前目录解析后的长路径格式
注意事项:
1. 自动添加"\\\\?\\"前缀
2. 支持相对路径转换
3. 路径长度不受260字符限制
4. 需要Windows系统支持
5. 结果可直接用于文件操作
------------------------------------------------------------
16
函数名称: xdrx-path-make
描述:
根据驱动器号、目录、文件名和扩展名组合成完整路径
调用格式:
(xdrx-path-make <驱动器> <目录> <文件名> <扩展名>)
参数说明:
* <驱动器>: 驱动器号(如"C:")
* <目录>: 目录路径(如"\\temp\\subdir")
* <文件名>: 文件名(不含扩展名)
* <扩展名>: 文件扩展名(如".txt")
返回值:
返回组合后的完整路径字符串
示例用法1:
(xdrx-path-make "C:" "\\temp" "config" ".ini")
; 返回"C:\\temp\\config.ini"
示例用法2:
(xdrx-path-make "" "..\\data" "report" ".doc")
; 返回"..\\data\\report.doc"
注意事项:
1. 自动处理路径分隔符
2. 空参数视为空字符串
3. 扩展名自动添加点号
4. 结果路径已规范化
5. 支持相对路径组合
------------------------------------------------------------
17
函数名称: xdrx-path-env
描述:
获取系统PATH环境变量并拆分为路径列表
调用格式:
(xdrx-path-env)
参数说明:
无参数
返回值:
返回PATH环境变量拆分后的路径列表,获取失败返回nil
示例用法1:
(xdrx-path-env)
; 可能返回("C:\\Windows\\System32" "C:\\Program Files\\Java\\bin" ...)
示例用法2:
(setq paths (xdrx-path-env))
; 将PATH路径列表赋值给变量paths
注意事项:
1. 按分号(;)拆分PATH变量
2. 返回LISP列表格式
3. 不验证路径是否存在
4. 结果可直接用于路径搜索
5. 需要系统环境变量访问权限
------------------------------------------------------------
18
函数名称: xdrx-path-quotes
描述:
为含空格的路径添加/移除双引号
调用格式:
(xdrx-path-quotes <路径> )
参数说明:
* <路径>: 要处理的路径字符串
* T: 可选参数,指定时移除引号,否则添加引号
返回值:
返回处理后的路径字符串
示例用法1:
(xdrx-path-quotes "C:\\Program Files")
; 返回"\"C:\\Program Files\""
示例用法2:
(xdrx-path-quotes "\"C:\\My Documents\"" T)
; 返回"C:\\My Documents"
注意事项:
1. 自动判断是否需要添加引号
2. 仅当路径含空格时添加引号
3. 保留原始路径格式
4. 结果可直接用于命令行
5. 支持嵌套引号处理
------------------------------------------------------------
19
函数名称: xdrx-path-relative
描述:
计算两个路径之间的相对路径
调用格式:
(xdrx-path-relative <源路径> <目标路径>)
参数说明:
* <源路径>: 参考路径(可以是文件或目录)
* <目标路径>: 目标路径(可以是文件或目录)
返回值:
成功返回相对路径字符串,失败返回nil
示例用法1:
(xdrx-path-relative "C:\\temp" "C:\\temp\\sub\\file.txt")
; 返回"sub\\file.txt"
示例用法2:
(xdrx-path-relative "D:\\data\\config.ini" "E:\\backup")
; 返回nil(不同驱动器)
注意事项:
1. 自动识别文件/目录类型
2. 不同驱动器返回nil
3. 路径需存在才能准确计算
4. 结果使用反斜杠分隔符
5. 可直接用于路径导航
------------------------------------------------------------
20
函数名称: xdrx-path->short
描述:
将路径转换为Windows短路径格式(8.3格式)
调用格式:
(xdrx-path->short <路径>)
参数说明:
* <路径>: 要转换的路径字符串
返回值:
成功返回短路径格式字符串,失败返回nil
示例用法1:
(xdrx-path->short "C:\\Program Files\\Common Files")
; 可能返回"C:\\PROGRA~1\\COMMON~1"
示例用法2:
(xdrx-path->short "D:\\My Documents\\Report.docx")
; 可能返回"D:\\MYDOCU~1\\REPORT~1.DOC"
注意事项:
1. 自动转换为8.3格式
2. 保留路径有效性
3. 需要实际文件系统支持
4. 长文件名可能丢失信息
5. 结果可直接用于兼容性场景
------------------------------------------------------------
21
函数名称: xdrx-path-split
描述:
将完整路径拆分为驱动器号、目录、文件名和扩展名四个部分
调用格式:
(xdrx-path-split <路径>)
参数说明:
* <路径>: 要拆分的完整路径字符串
返回值:
返回包含四个元素的列表(驱动器 目录 文件名 扩展名)
示例用法1:
(xdrx-path-split "C:\\Windows\\System32\\cmd.exe")
; 返回("C:" "\\Windows\\System32\\" "cmd" ".exe")
示例用法2:
(xdrx-path-split "\\\\server\\share\\file.txt")
; 返回("" "\\\\server\\share\\" "file" ".txt")
注意事项:
1. 严格遵循Windows路径拆分规则
2. 网络路径驱动器号返回空字符串
3. 目录部分保留结尾反斜杠
4. 扩展名包含点号
5. 结果可直接用于路径重组
------------------------------------------------------------
页:
[1]