Re: [问题] 用RStudio都会碰到invalid multibyte

楼主: JackBaska (Baska)   2016-05-07 08:35:11
这个问题是我去年怒转 Linux 的主因 , 我测试的结果是
当你在RStudio里面加载大量中文字符 big 5 的档案后 ,
即便有编码设定 , 只要你对 Script 做存取动作便会发生
发生后所有RStudio的功能会完全瘫痪 , 可以操作但基本
上没有任何意义
一旦发生 , 只要你往后对该Script 做任何操作 , 特别
是像跟Syntax 有关的 tab complete , 便会出现这个bug
我猜是在存取时有些默认字符遇到 big 5 码 , 产生无意
义 , 但被误以为指令的段落 , 造成直译的parser crash
我对 R 的整体架构还没很全面的想法 , 所以是用猜的
瘫痪当下解决方式:
Session -> Terminate R
但该Script是否废了 ? 好险还没有 , 我有试出一个依旧
能执行该Script的方式 , 只要你叫出该Script , 不要做
任何动作 , 直接全选贴到新开的 Script , 但切记不要把
新Script做存盘动作 , 否则该问题会重新出现 , 只要不
存盘 , 你依旧可以自由操作该 Script
环境编码:
Tools -> Global Option -> General
BTW , 改环境编码对处理这个问题没有帮助 , 问题不是
package 是script 本身 , 目前经验是有加载中文档案
有中文注解 或是有属性名是中文 , 在 Windows都会有机
会发生 , 且只要一旦在存取Script发生 , 该Script就
会一直发生
这问题我刚遇到有考虑要回报 , 但RStudio的crash support
那时候翻写 "Only for Mac/Linux" 我就没回报了 , 整体来
说 , 是 Windows RStudio 的问题 不是 R的问题
希望对你有帮助
方便的话可以把标题改成方便遇到的人查询:
"invalid multibyte"
============原始可能遇到的 erro================
invalid multibyte character in parser at line 1
invalid multibyte string, element 1
===============================================
※ 引述《jjx66os ()》之铭言:
: [问题叙述]:
: 之前都是在Mac笔电上编写R
: 最近有些程式运算比较复杂些,改用Windows的桌机执行
: 不过当我打开RStudio,进行像是下载package的时候
: 都会碰到Error in nchar(homeDir) : invalid multibyte string, element 1
: 这样的讯息
: 我的安装路径资料夹都是英文的,安装位置也在默认的地方
: 但只要先执行Sys.setlocale(category = "LC_ALL", locale = "us")
: 就没问题了,不过关掉后下次再打开还是会有这样的问题
: 请问如何让Sys.setlocale(category = "LC_ALL", locale = "us")成为我的设定值呢?
: 找不到RStudio设定默认编码的地方
: 或者有没有其他的解决方法呢???
: 我的系统为Windows10专业版,R 3.2.5,RStudio应为最新版。
作者: jjx66os   2016-05-07 13:18:00
感谢回复,原文标题已改~
作者: memphis (让你喜欢这世界~)   2016-05-07 14:47:00
厉害喔

Links booklink

Contact Us: admin [ a t ] ucptt.com