You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CMD中正确输出非英文字符文件名并保存至TXT文件

解决CMD导出含非英文字符文件名乱码的问题

这问题我太熟了!CMD默认用的代码页(大多是GBK或者CP437)压根不支持阿拉伯语这类非拉丁字符,所以导出的文件名才会变成一堆???????.png。给你两个实用的解决办法:

方法1:修改CMD代码页为UTF-8

在你的批处理脚本开头添加切换编码的命令,让CMD用UTF-8来处理字符,这样就能正确识别阿拉伯语文件名了。修改后的脚本如下:

@echo off
chcp 65001 >nul  # 切换到UTF-8编码,>nul用来隐藏编码切换的提示信息
Setlocal EnableDelayedExpansion
For /r . %%g in (*.png *.jpg) do echo %%~nxg >>listfile.txt

注意:保存这个批处理文件的时候,要选择UTF-8编码(如果用记事本保存,选“编码”为UTF-8),不然脚本本身的命令可能会出现乱码。

方法2:用PowerShell替代CMD(更稳定的Unicode支持)

PowerShell对Unicode字符的支持比CMD好太多,直接用下面的命令就能生成正确的文件列表:

Get-ChildItem -Recurse -Include *.png,*.jpg | Select-Object -ExpandProperty Name | Out-File -FilePath "listfile.txt" -Encoding UTF8

你可以直接在PowerShell窗口里执行这条命令,或者把它保存成.ps1脚本运行。生成的listfile.txt用支持UTF-8的编辑器打开(比如Notepad++、Windows记事本)就能看到正常的阿拉伯语文件名。

内容的提问来源于stack exchange,提问作者Mhwmd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 10:03:01