标签: iso-8859-15

用 html 实体替换重音字符

我正在尝试自动执行一系列查询,但是,我需要将带有重音符号的字符替换为相应的 html 实体。\n它需要在 Python3 中

\n

例子:

\n
v\xc3\xa8lit \n[needs to become] \nvèlit\n
Run Code Online (Sandbox Code Playgroud)\n

问题是,每当我尝试执行 a 时word.replace,它都找不到。

\n

这:

\n
if u'\xc3\xa8' in sentence:\n    print(u'Found \xc3\xa8')\n
Run Code Online (Sandbox Code Playgroud)\n

工作并找到“\xc3\xa8”,但执行以下操作:

\n
word.replace('\xc3\xa8','è')\n
Run Code Online (Sandbox Code Playgroud)\n

什么都不做。

\n

python replace python-3.x python-unicode iso-8859-15

4
推荐指数
1
解决办法
2928
查看次数

如何在python中规范化iso-8859-15转换的unicode编码?

我想将unicode字符串转换为iso-8859-15.这些字符串包括u"\u2019"(RIGHT SINGLE QUOTATION MARK参见http://www.fileformat.info/info/unicode/char/2019/index.htm)字符,该字符不是iso-8859-15字符集的一部分.

在Python中,如何规范化unicode字符以匹配iso-8859-15编码?

我看过unicodedata模块没有成功.我设法完成这项工作

s.replace(u"\u2019", "'").encode('iso-8859-15')
Run Code Online (Sandbox Code Playgroud)

但我想找到一种更通用,更清洁的方式.

谢谢你的帮助

python unicode encoding utf-8 iso-8859-15

3
推荐指数
2
解决办法
3246
查看次数

使用Python将Unicode编码为iso8859-15

我正在使用Python 2.7.6,我正在尝试将基本的unicode字符串转换为iso8859-15.

尝试转换带有非ASCII字符的字符串时出错.这可能没问题,当这些字符不存在时是iso8859-15编码,但在这种情况下它们会:

例:

>>> import codecs
>>> a = "test"
>>> a
'test'
>>> a.encode ('iso8859-15')
'test'
>>> a = "ü"
>>> a
'\xfc'
>>> a.encode ('iso8859-15')
Run Code Online (Sandbox Code Playgroud)

错误代码:

Traceback (most recent call last):
  File "<pyshell#20>", line 1, in <module>
    a.encode ('iso8859-15')
  File "C:\Python27\lib\encodings\iso8859_15.py", line 12, in encode
    return codecs.charmap_encode(input,errors,encoding_table)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xfc in position 0: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)

在这种情况下,"ü"是一个有效的iso8859-15 char,其中十六进制值为fc或11111100为二进制.查看"C:\ Python27\lib\encodings\iso8859_15.py",第300行中的值为FC:

    47:  decoding_table = (
    48:  u'\x00'     #  0x00 -> NULL
    ..... …
Run Code Online (Sandbox Code Playgroud)

python unicode encoding encode iso-8859-15

3
推荐指数
1
解决办法
4509
查看次数

使用 Java 中的特定编码写入文件

可能与我之前的问题有关(关于如何将“för”转换为“för”)

所以我在我的代码中创建了一个文件。现在我通过以下代码创建它:

FileWriter fwOne = new FileWriter(wordIndexPath);
BufferedWriter wordIndex = new BufferedWriter(fwOne);
Run Code Online (Sandbox Code Playgroud)

跟着几个

wordIndex.write(wordBuilder.toString()); //that's a StringBuilder
Run Code Online (Sandbox Code Playgroud)

结束(在while循环之后)

wordIndex.close();
Run Code Online (Sandbox Code Playgroud)

现在问题是这个文件很大,我想(需要)在不遍历整个文件的情况下跳转到它。让我这样做的seek(long pos)方法RandomAccessFile

这是我的问题:我创建的文件中的字符似乎是用 UTF-8 编码的,我寻找时唯一的信息是我想跳转到的字符位置。seek(long pos)另一方面,以字节为单位跳转,因此我不会在正确的位置结束,因为 UTF-8 字符可能超过一个字节。

这是我的问题:当我写文件时,我可以用 ISO-8859-15 来写它吗(其中一个字符是一个字节)?这样,这seek(long pos)将使我处于正确的位置。或者我应该尝试使用替代方法RandomAccessFile(是否有替代方法可以跳转到字符位置?)

java encoding utf-8 iso-8859-15 randomaccessfile

0
推荐指数
1
解决办法
1万
查看次数