pathlib read_text() 方法如何在 Windows 10 Enterprise 上正确显示德语变音符号?

发布于 2025-01-11 04:03:43 字数 1217 浏览 0 评论 0原文

我在读取包含以下内容的文本文件 textFile1 时遇到问题:

在屏幕测试的试镜阶段,第一次发生了战争。 Sie haben mir das alte Kostüm von einem meiner Vorgänger、Val Kilmer、gegeben。 Es 战争 verrückt。 Ich weiss noch genau,wie ich es mir angezogen habe und dachte,蝙蝠侠 zu spielen wird hier drinnen unmöglich sein für mich,völlig ausgeschlossen!

from pathlip import Path
p = Path('textFile1')
p.read_text()

语言为德语,部分字符显示不正确:

'Das erste Mal war noch in der Audition-Phase bei einem Screentest.\nSie haben mir das alte KostÒm von einem meiner Vorgänger, Val基尔默,gegeben。\nEs war verrückt。\nIch weiss noch genau,wie这是 mir angezogen habe und dachte,蝙蝠侠 zu spielen wird hier drinnen unmöglich sein fÒr mich,vÎllig ausgeschlossen!\n'

我遇到了这个问题另一次,当我尝试将表导入 postgreSQL 时。解决方法是从命令行输入以下内容:

chcp 1252
psql -U postgres
SET client_encoding='WIN1252'
\i Path/to/your/.sqlFile

我正在 Windows 计算机(Windows 10 企业版)上工作。有没有一种方法可以解决问题,而无需每次从命令行读取文本文件时更改 client_encoding ?我已经对此主题进行了大量研究,但找不到永久更改设置的方法。这似乎是一个“Windows 问题”,因为在我的 Mac 上所有字符都显示正确。

I have problems reading a text file textFile1 with the following content:

Das erste Mal war noch in der Audition-Phase bei einem Screentest.
Sie haben mir das alte Kostüm von einem meiner Vorgänger, Val Kilmer, gegeben.
Es war verrückt.
Ich weiss noch genau, wie ich es mir angezogen habe und dachte, Batman zu spielen wird hier drinnen unmöglich sein für mich, völlig ausgeschlossen!

from pathlip import Path
p = Path('textFile1')
p.read_text()

The language is German and some of the characters are not displayed correctly:

'Das erste Mal war noch in der Audition-Phase bei einem Screentest.\nSie haben mir das alte Kostüm von einem meiner Vorgänger, Val Kilmer, gegeben.\nEs war verrückt.\nIch weiss noch genau, wie ich es mir angezogen habe und dachte, Batman zu spielen wird hier drinnen unmöglich sein für mich, völlig ausgeschlossen!\n'

I came across this problem on another occasion when I tried to import a table into postgreSQL. A workaround was to enter the following from the command line:

chcp 1252
psql -U postgres
SET client_encoding='WIN1252'
\i Path/to/your/.sqlFile

I am working on a Windows machine (Windows 10 Enterprise). Is there a way to solve the problem without changing the client_encoding every time I read text files from the command line? I have done quit a lot of research on this topic but I couldn't find a way to change the settings permanently. It seems to be a "Windows problem", because on my Mac all the characters are displayed correctly.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

笑脸一如从前 2025-01-18 04:03:43

p.read_text(编码='UTF-8')

p.read_text(encoding='UTF-8' )

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文