Skip to content

sanitizeDownloadFilename

清理下载文件名中的非法字符并限制长度。

函数签名

typescript
interface SanitizeDownloadFilenameOptions {
  fallback?: string
  maxLength?: number
  allowCjk?: boolean
}

function sanitizeDownloadFilename(
  name: string,
  optionsOrFallback?: string | SanitizeDownloadFilenameOptions,
): string

参数

参数名类型必填说明
namestring原始文件名
optionsOrFallbackstring | SanitizeDownloadFilenameOptions字符串时等同 { fallback };默认 download

SanitizeDownloadFilenameOptions

字段类型默认说明
fallbackstringdownload清理后为空时使用
maxLengthnumber200最大长度
allowCjkbooleanfalse允许中文与 \w,折叠连续非法字符

返回值

类型说明
string安全文件名

工作原理

  1. 默认模式:将 /\?*:|"<> 替换为 _ 并 trim,截断至 maxLength
  2. allowCjk: true:保留 \w 与中文,其余非法字符折叠为 _,合并连续 _(icon-font 导出等)。
  3. 空串回退 fallback