我正在日语环境中使用日语版的Windows 7,不幸的是,我需要处理的许多文件和文件夹名称都使用日语字符。
例如,我在.bat文件中有这一行:
xcopy * "C:\blahblah\動作確認\" /E /R /K /Y /I
但是,在C:\ blahblah \文件夹中,这是我得到的文件夹的名称: C:\ blahblah \蜍穂ス勤「コ隐构
问题在于动作确认已经转变为蜍穂ス勤“コ隐构”。后者,虽然它使用亚洲字符(和标点符号)是无意义的胡言乱语,甚至不是所有日语字符。
我研究了这个问题,我发现许多使用Windows英语本地化的人都有一个问题,他们会看到问号而不是日文字符。这不是我使用日语本地化Windows所发生的情况 - 如果我启动cmd并导航到我要复制的源文件夹的父级,运行dir
并获得此输出:
2014/02/07 16:36 <DIR> 蜍穂ス懃「コ隱構
这是胡言乱语,而不是真正的日本人。
那么我需要做些什么来使我的批处理文件中的xcopy命令工作?
答案 0 :(得分:3)
我猜你已经找到了解决办法,但让我回答。
如果您有UTF-8
个字符串動作確認
的字节序列并将其解析为CP932
(又名Shift-JIS
)字节序列,您将获得{{1}或类似的字符串。
日语版的Windows使用蜍穂ス懃「コ隱構
作为默认编码,因此我们必须在CP932
中指定文件/目录名称。
在您的情况下,您必须在CP932
中写下.bat
文件。你应该在UTF-8
中写下来。
答案 1 :(得分:0)
除了@t_motooka的答案外,如果将系统区域设置(Control Panel / Region and Language / Administrative / Change system locale
)从英语(默认)更改为日语,则cmd默认代码页将更改为CP932
,之后,大多数日本相关工作的时间也可以。