如何删除R中JSON文件中的无效字符?

时间:2018-01-16 00:12:59

标签: r encoding

我想从Reddit页面获取数据,但我在使用RJSONIO包转换为JSON时遇到问题。它适用于其他Reddit页面,但这个让我头疼,因为它返回public abstract class BaseActivity extends AppCompatActivity { String theme; @Override protected void onCreate(Bundle savedInstanceState) { theme = PreferenceManager.getDefaultSharedPreferences(this).getString(getString(R.string.prefsThemesList), getString(R.string.prefsThemesList_default)); try { Field resourceField = R.style.class.getDeclaredField(theme); int resourceId = resourceField.getInt(resourceField); setTheme(resourceId); } catch (Exception e) { e.printStackTrace(); } super.onCreate(savedInstanceState); } @Override protected void onResume() { super.onResume(); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); if (!theme.equals(prefs.getString(getString(R.string.prefsThemesList), " none "))) { this.recreate(); } } }

invalid JSON input

我尝试使用library(RCurl) library(RJSONIO) json <- getURL("https://www.reddit.com/r/burstcoin/new.json?sort=rising?limit=100") list <- RJSONIO::fromJSON(json) Error in fromJSON(content, handler, default.size, depth, allowComments, : invalid JSON input > Encoding(json) [1] "UTF-8" 删除非ASCII字符,但它没有给出预期的结果,但我仍然有同样的错误。

iconv

我也使用stringi包,它提供了一般unicode转换的功能,但仍然是同样的错误。

json <- iconv(json, "UTF-8", "ASCII", sub="")

> Encoding(json)
[1] "unknown"

如何解析此JSON文件?

类似的问题:Removing non-ASCII characters from data files

1 个答案:

答案 0 :(得分:0)

用户@Cyber​​netic在评论部分给出了答案并且完美地运作:

json <- getURL("https://www.reddit.com/r/burstcoin/new.json?sort=rising?limit=100")
json <- fromJSON(toJSON(json))
list <- RJSONIO::fromJSON(json)