PhpStorm:将文件夹编码转换为另一种编码

PhpStorm: Converting folders encoding to another

我有一个项目,其中有很多 ISO-8859-15 文件,我需要将它们转换为 UTF-8 .如果我更改一个文件,它会询问 "Do you want to convert - plaplapla",如果我说是,重要的符号就不会变成 ???。

但是,由于我的项目文件量很大,无法一一完成。从项目设置中更改编码设置,它可能会将编码更改为 utf-8,但所有符号将变为 ??? (因此没有转换)。

那么,我如何告诉 PhpStorm 将所有文件转换为 utf-8?有可能吗?如果有,怎么办?替代方法是什么?

AFAIK 不可能一次对整个文件夹执行此操作.. 但可以对多个文件执行此操作(例如,特定文件夹中的所有文件):

  1. Select 项目视图面板中的所需文件
  2. 使用File | File Encoding
  3. 当系统询问时——确保您选择 "convert" 而不仅仅是 "read in another encoding"。

您可以对每个子文件夹重复此过程(仍然比对每个文件单独执行此过程快得多)。


另一种可能的替代方法是使用类似 iconv 的工具(或任何其他类似工具)并在 terminal/console.

中执行此操作

在 PHPStorm 中打开要转换的文件时请注意。在我的例子中,所有文件仍然以 ISO-8859 编码,但以 UTF-8 打开,导致拼写错误的变音符号,即在这种情况下,直接转换为 UTF-8 是不可能的。

如果遇到这种情况,请执行以下操作:

  1. 打开 ISO-8859 文件
  2. 将文件编码下拉列表(右下角)更改为 ISO-8859-1 或 ISO-8859-15,然后选择重新打开
  3. 现在拼写错误将消失
  4. 然后再次更改编码(下拉右下角),这次是 UTF-8 并选择 CONVERT
  5. 现在文件已正确编码为 UTF-8

干杯