我的系统以R 3.5.3和Rstudio 1.1.463,locale
赢得10,如下所示:
> Sys.getlocale()
[1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
我的同学给了我一个在Linux系统中生成的UTF8
csv文件sample.csv
,this file可以通过如下的php脚本生成:
<?php
$a=
array (
'col1' => 12,
'col2' => 'Y' ,
'col3' => '<p style="text-align: center;">
<strong style="text-align: center;"><span style="color: rgb(105, 105, 105); font-family: verdana, arial, sans-serif; font-size: 13px;">版权</span></strong></p>
<p>
<span style="color: rgb(105, 105, 105); font-family: verdana, arial, sans-serif; font-size: 13px;">bla</span></p>
<p>
<span style="color: rgb(105, 105, 105); font-family: verdana, arial, sans-serif; font-size: 13px;"><img alt="" src="/functions/2.jpg" style="width: 400px; height: 500px;" /></span></p>
<p>
<span style="color: rgb(105, 105, 105); font-family: verdana, arial, sans-serif; font-size: 13px;">bla</span></p>
' ,
'col4' => '<br />
' );
$fp = fopen("sample.csv", "wb");
$question_list_cols=array('col1','col2','col3','col4');
fputcsv($fp, $question_list_cols);
if (!fputcsv($fp, array_values($a))) {
echo "fail<br />";
}
fclose($fp);
?>
当我在R sample.csv
中读取df<-read.csv("sample.csv",header=TRUE)
时,出现错误invalid input found on input connection
。
我在SO中尝试了类似的问题,但没有人可行。
由汉字版权
引起的问题。删除这些汉字后一切正常。
如何在R中读取带有汉字的utf8 csv?