希腊语的 .srt 文本文件无法正确显示

希腊语的 .srt 文本文件无法正确显示

我正在运行 ubuntu 16.04,当我下载电影字幕、解压 zip 文件后,尝试.srt使用 gedit 打开该文件时,我看到的只是这种形式的乱码:

1 00:04:17,052 --> 00:04:18,963 ÊáëÞ ãç.
2 00:04:19,452 --> 00:04:20,851 ¹ôáí êÜðïôå.

我尝试使用 jedit 和 LibreOffice Writer 打开文件,但同样不起作用。在 gedit 上,我没有直接双击文件来打开它,而是尝试先打开 gedit,然后浏览到我的文件,将字符编码和文本语言也设置为希腊语,但这似乎没有帮助。

我还按照我在另一个问题类似的事情,但没有任何区别。
我真的不知道问题出在哪里,是在 gedit 还是在文件滚动器中。更奇怪的是,当我运行 14.04 时,我记得按照我在开始时描述的步骤操作,一切都运行正常。

我对 Linux 还比较陌生,只能使用终端执行基本操作。如果有人能帮助我,我将不胜感激。

答案1

我遇到了同样的问题,只是在其他人的帮助下解决了它。直接用 或其他编辑器打开它geditLibreOffice尝试以另一种编码保存它没有帮助。原因是它们通常以 Windows-1253 集编码,而许多 Linux 程序会自动将此代码集检测为“西方”

一个简单的方法就是告诉你使用的每个程序它不是一个“西方”代码集。对于编辑,您可以通过单独打开 gedit 来执行此操作,转到"Open file",选择您的文件,然后在窗口底部选择正确的"Character Encoding",此时应该显示“自动检测”,必须将其更改为希腊代码集才能获得可读的文本。然后,Gedit 会以正确的代码集打开文件。例如甚高频液晶,既然我们在讨论字幕,唯一要做的就是将默认字幕编码更改为“Windows-1253”,您可以在中找到它"Preferences"/"Subtitles"。然后希腊字母就会正常显示,即使您无法在其他编辑器中正确读取.srt。

打开在 Windows 机器上编写的 txt 文件中可读的希腊字符的另一种最安全的方法是首先将它们转换为 UTF-8,这将为您提供永久的解决方案针对特定文件。可以通过控制台使用iconv工具进行操作:

iconv -f Windows-1253 -t UTF-8 input.txt > output.txt

显然,您既可以从 .txt 文件所在的文件夹执行它,也可以从其他任何地方执行它,但在这种情况下,请提供 input.txt 和 output.txt 的完整路径。在极少数情况下,原始文件编码可能是 ISO-8859-7,这是另一种希腊编码,如果 Windows-1253 不起作用,您也可以尝试使用它,将其替换为“来自”编码,即

iconv -f ISO-8859-7 -t UTF-8 input.txt > output.txt

答案2

这里您需要的解决方案是gaupolgaupol是一个字幕编辑程序,也用于纠正符号的错误显示。

首先,在终端中输入: file -bi my_subtitle_track.srt

这样您就可以获取文件的编码(可能不是每次都按预期工作)。您将获得如下结果

text/plain; charset=iso-8859-1

然后,安装完成后gaupol,启动它,并尝试使用上面得到的编码结果打开文件。如果您看到符号显示正确,则表示您使用正确的编码打开了它,现在您需要将其保存为通用编码以与其他程序兼容。选择File->Save As-> My_subs_track.srt使用UTF-8编码。

对我有用,希望有帮助:)

答案3

Gaupol 软件

  • 下载Gaupol 软件
  • 下载字幕(不要打开字幕)
  • 打开 gaupol
  • 转到编辑首选项..文件并选择 Unicode (UTF-8)
  • 在 gaupol 中打开 subtile

在此处输入图片描述

相关内容