java和python中的字符串偏移量

2024-06-02 06:30:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我是一个初级python程序员,过去我对java有点了解。 我有一些文本文件(土耳其语)和相应的xml文件,其中包含 课文中的连接词。例如

-<Conn> 
    -<Span> 
        <Text>ama</Text> 
        <BeginOffset>281</BeginOffset> 
        <EndOffset>284</EndOffset> 
    </Span> 
</Conn>

这表示在txt文件的281偏移量处有一个“ama”。但是当我用python阅读这个文件时, “ama”在301。字节或者它是272。文件中的字符。据我所知,java应用程序在读取txt文件时并没有提到任何编码。我试着用unicode,UTF8等读取文件。。。 我需要找到一种从这些偏移量到文件中正确位置的方法。我猜,问题是由于土耳其语字符(在不同的编码中可能需要不同的字节数),但我无法理解。 任何建议都对我很有帮助。 谢谢 编辑: 我在python3.3中使用了以下代码:

^{pr2}$

Tags: 文件texttxt编码xmljavaconn字符
0条回答
网友
1楼 · 发布于 2024-06-02 06:30:18

正如@Gene所说,这是行尾标记。由于java应用程序是在windows中编写的,因此它将每个'\n'计为2个字节。但是python将它们计为1个字节。我计算'\n'直到偏移量,并从给定的偏移量中减去它。 非常感谢你富有见地的评论

相关问题 更多 >