Text-Processing

iconv 錯誤消息中的“位置”是什麼意思?

  • April 17, 2019

轉換大文件時出現錯誤:

$ iconv -f GB2312 -t UTF-8 2001.txt -o 2001_u.txt
iconv: illegal input sequence at position 245256667

這個錯誤中的位置是什麼意思?我試過它不是行號。如何在其他工具或編輯器(如 emacs)中獲得職位?

它是文件的 245256667 字節。如果您執行以下操作:

dd if=2001.txt of=error.txt bs=1 count=10 skip=245256667

您應該能夠通過執行以下操作來查看無效的 utf8 序列hexdump -C error.txt

有了vim你就可以

:go POSITION+1

例如

:go 245256668

或者,在命令模式下:

POSITION+1go

那是

245256668go

引用自:https://unix.stackexchange.com/questions/152792