3

我不时需要从我获得的 CD 中列出文件。这些文件的名称经常包含其他书写系统中的字符,如西里尔俄语 (Добродошли.doc) 或简体/繁体中文 (孟子译注.pdf)。我的电脑(在 Windows 7 下运行,波兰语)显示正确的文件名、打开文件、将文件保存在其他位置、让各种软件编辑文件等。然而,当我制作目录列表时(使用 dir 命令) 我总是得到问号和其他奇怪的字符而不是其他(中文、俄文)字符——默认情况下 dir 命令的输出似乎是默认用 ANSI 编写的——而不是 Unicode/UTF8。

例子:

02.03.09 21:13 15˙584˙500 ??????(??????).pdf = 这三个文件是中文的
02.03.09 03:11 18˙638˙982 ????(???).pdf
24.03.08 17:25 61˙141˙454 ???®????Ż(???).pdf
18.03.13 16:00 1˙088 ????.txt = 此文件的名称是俄语
02.03.09 21:20 26˙083˙641 Transformations-of-Ming.pdf

(通过 Windows 右键单击​​上下文菜单“打印目录列表”获得)

我曾尝试在 www 上搜索有关此问题的各种建议,但所提供的解决方案都没有解决我的问题 - 或者我发现(看似过时的)问题的答案暂时无法在各种环境下解决。也许有些东西发生了变化 - 也许有一个解决方案,直接或在 Windows 注册表中更改了某些东西之后?或者,如果没有简单的批处理编程解决方案——也许有一些我可以下载(免费或购买)的现成软件来解决我的问题?

我不熟悉 Java 或 php 编程,也不知道如何处理 Ruby(这里有类似的问题,但仅限于这些环境)。我可以说我陷入了 MS-DOS 批处理编程——在 1980 年代末到 1990 年代中期,我曾经非常擅长批处理编程,甚至在用于 DOS 宏命令编辑/创建等复杂的 WordPerfect 5.1 中也是如此字符串编程的类型——也许我太老了(不要问我,请问几岁),无法学习高级面向对象编程(我从来没有当过程序员,只是一个电脑迷,但是在 Windows 98 之后我不得不放弃)。

感谢您的任何建议 - 我会全部尝试(如果有的话)。

4

4 回答 4

0

首先,您需要支持外来字符的 True Type 字体 (TTF)。安装字体:

  • 鼠标右键单击标题栏
  • 选择属性/字体
  • 如果您的字体不在列表中,您必须先在注册表中使用键添加它HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont\

安装字体后,控制台会显示该字体支持的所有外来字符。类似dir或重定向到文件的命令dir > dir.txt也可以工作。并且无需更改代码页chcp

于 2013-04-16T07:58:59.640 回答
0

设置 chcp 65001 为我解决了问题。至少在我的情况下,问题出在错误的代码页中。

于 2014-12-19T00:52:41.760 回答
0

使用管理员 CMD 命令提示符”

方法:按住 SHIFT 键并用鼠标指针在目标文件夹上单击鼠标右键。并在下拉菜单中选择“在此处打开命令提示符”。您的文件夹现在将处于管理员访问权限下。

在文本光标闪烁的命令提示符处的命令提示符窗口中”

键入“chcp 1251”(不带引号)并按 ENTER 键更改命令提示符显示目录内容的方式。这实际上是 Windows 内部更改的更改代码页命令,您还不会看到任何 unicode Cyrillic 或中文字体文本。

现在键入“dir/w”并按 ENTER 键,这将显示目标目录中的所有内容。

右键单击并从下拉菜单中选择“全选”。再次按 ENTER 键。这会将现在显示在命令窗口中的所有文本内容复制到 Windows 剪贴板上。不要关闭命令提示符窗口,因为您需要完成一些 Windows 房屋清洁工作。

启动 Notepad.exe(基本的 windows 文本编辑器)或 Notepad++ 程序员最喜欢的文本编辑器(您可以谷歌并下载免费使用的副本)并将您的剪贴板内容粘贴到您选择的编辑器中。您将看到以正确字体显示的目录内容的西里尔文和中文文本。但是使用 Unicode 编码选项保存文本文件。

要返回 Windows 原生的旧更改页面代码,即西欧拉丁语:

在命令提示符下键入“chcp 1252”,然后按 ENTER 键。关闭命令提示符窗口。

于 2022-03-05T16:04:47.883 回答
-1

使用Windows'95,运行文件管理器,(认为=那个,与使用的相同+ Windows 3.1),它在Windows文件夹中,然后转到更改字体的选项,选择西里尔字母1。现在1可能会看到俄语文件的名称。Window XP,@DOS 提示使用 CHCP 866。

于 2015-06-02T10:35:59.133 回答