包含批处理中的变音符号的打开URL

时间:2018-08-26 13:36:58

标签: batch-file url encoding automation

我想用批处理文件打开Chrome中的URL。这适用于普通网址,但不适用于带有变音符号的网址。

start chrome.exe https://trends.google.de/trends/explore?q=mähroboter

我不能用“ ae”代替“ä”,因为它会在Google趋势上给我带来不同的结果。

当我这样保存时,浏览器中的URL更改为

https://trends.google.de/trends/explore?q=mA4hroboter

这又给了我错误的结果。它必须是“ä”。

我尝试使用文件编码。当前没有BOM的UTF8。我尝试将UTF8与BOM,ANSI进行往返转换。似乎没有任何工作。我该怎么做才能使其正常工作?

1 个答案:

答案 0 :(得分:1)

URL必须是URL encodedpercent-encoded bytes

这意味着URL中的德文变音符号ä必须首先用两个带有十六进制值C3 A4的字节进行UTF-8编码,然后再进行百分号编码,从而得出{ URL字符串中的{1}}:

%C3%A4

在批处理文件中,必须转义百分号和其他百分号,以使Windows命令处理器将其解释为文字字符而不是

  • 作为批处理文件参数引用的开头,如在命令提示符窗口中运行https://trends.google.de/trends/explore?q=m%C3%A4hroboter 时在命令 CALL 的帮助下解释的那样,或
  • 开始循环变量引用,如在命令提示符窗口中运行call /?时在命令 FOR 的帮助下解释的那样,或者
  • 环境变量引用的开头/结尾,如在命令提示符窗口中运行for /?时在输出命令 SET 的帮助下所述。

因此必须使用批处理文件:

set /?