UnicodeDecodeError:“utf-8”编解码器无法解码位置 34 中的字节 0x85:无效的起始字节

Posted

技术标签:

【中文标题】UnicodeDecodeError:“utf-8”编解码器无法解码位置 34 中的字节 0x85:无效的起始字节【英文标题】:UnicodeDecodeError: 'utf-8' codec can't decode bytes 0x85 in position 34: invalid start byte 【发布时间】:2020-08-19 21:40:20 【问题描述】:

我正在尝试使用tensorflow models API 进行训练。运行时出现此错误:

python legacy/train.py --logtostderr
--train_dir=pack_detector/models/ssd_mobilenet_v1/train/ -- I am running this from tensorflow/models/research/object_detection

我在python3.7tensorflow 1.16 上运行

pipeline_config_path=pack_detector/models/ssd_mobilenet_v1/ssd_mobilenet_v1_pack.config 回溯(最近一次通话最后): 文件“legacy/train.py”,第 184 行,在 tf.app.run() 文件 "C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\tensorflow\python\platform\app.py", 第 40 行,运行中 _run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef) 文件 "C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\absl\app.py", 第 299 行,运行中 _run_main(main, args) 文件 "C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\absl\app.py", 第 250 行,在 _run_main sys.exit(主(argv)) 文件“C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\tensorflow\python\util\deprecation.py”, 第 324 行,在 new_func 中 返回函数(*args,**kwargs) 文件“legacy/train.py”,第 93 行,在 main FLAGS.pipeline_config_path) 文件“C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\object_detection\utils\config_util.py”, 第 95 行,在 get_configs_from_pipeline_file proto_str = f.read() 文件“C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\tensorflow\python\lib\io\file_io.py”, 第 128 行,已读 pywrap_tensorflow.ReadFromStream(self._read_buf, length)) 文件“C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\tensorflow\python\lib\io\file_io.py”, 第 98 行,在 _prepare_value 返回 compat.as_str_any(val) 文件“C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\tensorflow\python\util\compat.py”, 第 117 行,在 as_str_any 中 返回 as_str(值) 文件“C:\Users\suparun\Anaconda3\envs\tensor\lib\site-packages\tensorflow\python\util\compat.py”, 第 87 行,在 as_text 中 返回 bytes_or_text.decode(编码) UnicodeDecodeError:“utf-8”编解码器无法解码位置 34 中的字节 0x85:无效起始字节

【问题讨论】:

【参考方案1】:

0x85 是这个字符……

是三个点的字符。

我只是通过将 替换为像... 这样的实际点来修复它

但是我用notepad++替换了它

我不知道如何以编程方式替换它。

【讨论】:

我没有新问题。我只是告诉他我是如何在我的程序中解决这个问题的。

以上是关于UnicodeDecodeError:“utf-8”编解码器无法解码位置 34 中的字节 0x85:无效的起始字节的主要内容,如果未能解决你的问题,请参考以下文章

UnicodeDecodeError: ‘utf-8’ codec can’t decode byte...

UnicodeDecodeError:“utf-8”编解码器无法解码位置 0 的字节 0xff

UnicodeDecodeError:“utf-8”编解码器无法解码位置 34 中的字节 0x85:无效的起始字节

UnicodeDecodeError:“utf-8”编解码器无法解码位置 35 中的字节 0x96:无效的起始字节

UnicodeDecodeError:“utf-8”编解码器无法解码位置 1023 中的字节 0xe2:数据意外结束

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xc0 in position 0: invalid start byte报错解决