开源改变世界

UnicodeDecodeError: ‘ascii’ 编解码器无法解码位置 2 中的字节 0xb2:序号不在范围内 (128) #940

推推 grbl 3年前 (2023-02-01) 277次浏览
打开
Harvie 打开了这个问题 2018 年 8 月 17 日 · 3条评论

注释

UnicodeDecodeError: 'ascii' 编解码器无法解码位置 2 中的字节 0xb2:序号不在范围内 (128) #940
合作者

上次 archlinux 升级后,打开对话框拒绝打开文件。我只能打开最近的文件,但不能使用文件对话框选择文件。它影响最新的 git 和稳定的 bCNC 版本 0.9.11。它给了我这个:

Traceback (most recent call last):
  File "/home/harvie/Temp/bCNC/Utils.py", line 434, in __call__
    return self.func(*args)
  File "bCNC.py", line 1947, in loadDialog
    filetypes=FILETYPES)
  File "/home/harvie/Temp/bCNC/lib/bFileDialog.py", line 925, in askopenfilename
    return OpenDialog(**options).show()
  File "/home/harvie/Temp/bCNC/lib/bFileDialog.py", line 366, in show
    self.typeCombo.set(self.typeCombo.get(0))	# will fill the files
  File "/home/harvie/Temp/bCNC/lib/tkExtra.py", line 3058, in set
    self.invoke()
  File "/home/harvie/Temp/bCNC/lib/tkExtra.py", line 3010, in invoke
    self.command()
  File "/home/harvie/Temp/bCNC/lib/bFileDialog.py", line 765, in typeChange
    self.fill()
  File "/home/harvie/Temp/bCNC/lib/bFileDialog.py", line 552, in fill
    filename = os.path.join(path, fn)
  File "/usr/lib/python2.7/posixpath.py", line 73, in join
    path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb2 in position 2: ordinal not in range(128)

你有过这样的经历吗?

UnicodeDecodeError: 'ascii' 编解码器无法解码位置 2 中的字节 0xb2:序号不在范围内 (128) #940
合作者作者
哈维 评论了 2018 年 8 月 17 日  

解决方法:
这只发生在包含带有时髦字符的文件名的目录中。不幸的是,bCNC 会记住上次使用的目录,一旦你进入那个有问题的目录,你总是会在点击打开按钮时触发错误。为了让它再次运行,我必须在 ~/.bCNC 中编辑以下行以指向没有此类文件的某个目录:

[File]
dir = /home/harvie/Work
...

这也意味着它不是由 ArchLinux 升级触发的,而是由我打开新目录触发的。

UnicodeDecodeError: 'ascii' 编解码器无法解码位置 2 中的字节 0xb2:序号不在范围内 (128) #940
合作者作者

这在 Python3 之前无法修复

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

1名参加者
UnicodeDecodeError: 'ascii' 编解码器无法解码位置 2 中的字节 0xb2:序号不在范围内 (128) #940

喜欢 (0)