C#带有捷克字符的文件名,但没有成功

时间:2009-10-29 10:14:46

标签: c#

我有一个包含捷克字符的字符串。

字符串是“0bálka”

然后该字符串用于创建文件,以及文件夹和文件名的一部分。

但是当我保存文件时,在Windows资源管理器中,我在文件名中得到了有趣的块字符。

知道如何保存此文件并保留有效的捷克字符吗?

3 个答案:

答案 0 :(得分:3)

两个猜测可能会发生什么:

  1. 资源管理器中使用的字体不包括该特定字符。不太可能,因为á几乎不是一个特殊的角色。
  2. 更可能的变体是,您在C#中的源文件编码是非Unicode,被解释为一些随机代码页(可能是CP 1252或1251),并且您使用的结果字符与您在源文件。然后出现字体问题。
  3. 您可以通过单击“文件”菜单中的“另存为...”,在Visual Studio中使用特定编码保存源文件,然后单击保存按钮右侧的小箭头,然后选择“使用编码保存”。然后,您应该从列表中选择诸如“Unicode(带签名的UTF-8) - 代码页65001”之类的值。

答案 1 :(得分:1)

你的windows应该有捷克语才能显示正确的文件名,这与c#无关。

答案 2 :(得分:1)

请不要担心,这与Windows 显示文件名的方式有关,如果更改了Windows区域设置,它可能仍然具有正确的名称。

但是,在将文本保存到文件时,需要注意encoding you use

您可以在这里了解可能发生的事情的一般背景:

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

相关问题