我正在编写一个C#控制台应用程序,每当我将包含双引号的文本粘贴到控制台时,它就会将它们改为常规引号。下面是一个例子。我粘贴了 „Hello World!”
到控制台,但它显示 „Hello World!"
来代替。我试着把输入和输出编码改为unicode,但没有用。粘贴到记事本中也能正常工作。
找到了纯文本的解决方案 cmd
窗口,以及从文件资源管理器双击运行的控制台应用程序。有一个 DWORD 名为 FilterOnPaste
注册表键下 HKEY_CURRENT_USER\Console
. 默认值为 1
(1 启用新的粘贴行为), 改为 0
.
检查
reg query HKCU\Console -v FilterOnPaste
如果你得到默认数据
HKEY_CURRENT_USER\Console FilterOnPaste REG_DWORD 0x1
或 错误:系统无法找到指定的注册表键或值。 然后 运行
reg add HKCU\Console -v FilterOnPaste -d 0 -t REG_DWORD -f
The operation completed successfully.
解释如下 Windows Server 2016中的Windows控制台有什么新功能=>控制新功能。 (适用于 Windows 10 控制台也是如此)。)
另一种解释是 cmd
快捷键设置与截图在 如何在Windows 10中启用新的控制台,它的默认值是什么?.
事实上,我无法理解新控制台的全部含义和后果。新的粘贴行为.