【发布时间】:2011-12-02 10:47:50
【问题描述】:
请考虑以下问题。
我正在编写一个快速的Manipulate[] 程序来显示大量信息,但遇到了 unicode 问题。这是我目前的输入和输出:
Manipulate[
request = filenumber <> "*";
filenames = FileNames[request];
display = Import[type, "List"];
Short[display, 25]
, {filenumber, "001", InputField}, {type, filenames, PopupMenu}]
问题是法语口音出现的很奇怪。我想到的快速解决方法是将我的代码更改为 Import[type,"Plaintext"]; 可以工作,但随后以列表形式显示信息,如下所示:
您有什么建议可以让第二个示例的清晰性与前者的简单列表格式相结合?这样它就换行了,而不是在每个条目后换行。
顺便说一句 - 可能与实际问题本身一样重要 - 任何人都可以解释为什么导入为“列表”会扭曲 unicode 背后的基本原理吗?我在解决这个问题时遇到了很多麻烦,了解潜在行为可能会帮助我更快地前进。
【问题讨论】:
-
你试过
Import[filename, "List", CharacterEncoding -> "UTF8"] -
@Sasha 这太棒了。
CharacterEncoding -> "UTF8"将被我广泛使用。你想把它放在答案中以便我投票吗? -
@Sasha 我遇到了这个编码问题,并且一直在做本可以很快避免的变通方法。我认为这是 Import 类型所固有的,但我想不是。 :)
-
对于一个看似简单的问题,我很抱歉:我以前从未听说过
CharacterEncoding命令。很高兴我问了! -
伊恩,几天前我在玩你的数据文件时问了一个类似的问题,并在你原来的问题的评论中链接到它:stackoverflow.com/questions/8254429/…答案告诉你如何修复编码已经导入了字符串,我在问题本身中提到了
Import的CharacterEncoding选项。