窗口 bat 文件不适用于德语变音

Nos*_*haf 3 java batch-file character-encoding

我正在从 java 程序创建一个 .bat 文件:

 final OutputStreamWriter fop = new OutputStreamWriter( new FileOutputStream( "test.bat" ), Charset.forName( "UTF8" ) );
Run Code Online (Sandbox Code Playgroud)

Runtime.getRuntime().exec(); 在目录 (C:\usr\testdir) 中执行它

@echo off
cd C:\usr\testdir
echo "hello"
Run Code Online (Sandbox Code Playgroud)

上面的bat文件执行成功。但是当我更改包含德语变音符号的目录路径时,它给了我错误。: The system cannot find the path specified 其中 dir 路径 (C:\usr\wÖrkingÄÜÖ) 和 ./bat 将相同:

@echo off
cd C:\usr\wÖrkingÄÜÖ
echo "hello"
Run Code Online (Sandbox Code Playgroud)

所以问题是包含变音的路径。Google 帮助后,我chcp 652001在 bat 文件的顶部添加以更改 pageCode,但问题仍然保持不变。任何人都可以帮助我我所缺少的吗?

Raw*_*wns 6

您应该使用65001,而不是652001。尝试这个:

CHCP 65001
@echo off
cd C:\usr\wÖrkingÄÜÖ
echo "hello"
Run Code Online (Sandbox Code Playgroud)

这应该会强制批处理文件使用支持变音的 UTF-8 字符集。

在此处输入图片说明

  • 您是否将“CHCP 65001”添加到您的批处理文件中而不是尝试它而不是直接在命令提示符中测试它? (2认同)