我试图将本地CSV文件上传到Google Drive并在那里像Google电子表格一样显示它。然而,当我进入我的Google Drive并点击文件链接时,我只能下载它,无法将其视为电子表格查看。我尝试使用
当我右键单击该文件时,可以选择使用Google电子表格打开,然后正确显示该文件。我在Google的当前文档中找不到有关此事的任何信息,并且在Google上搜索的结果也没有帮助太多。
到目前为止,我所做的是创建一个新的,空白的Google电子表格,并尝试使用我的CSV文件填充它,但这给了我一个
?convert=true
,但文件没有被转换。我也尝试使用application/vnd.google-apps.spreadsheet
作为MIME类型,但什么都没有改变,或者我会收到一个400 Bad request
的响应。当我右键单击该文件时,可以选择使用Google电子表格打开,然后正确显示该文件。我在Google的当前文档中找不到有关此事的任何信息,并且在Google上搜索的结果也没有帮助太多。
到目前为止,我所做的是创建一个新的,空白的Google电子表格,并尝试使用我的CSV文件填充它,但这给了我一个
500 Internal Error
。 $file = new Google_DriveFile();
$file->setTitle('Exported data from ' . $this->event->title);
$file->setDescription('Exported data from ' . $this->event->title);
$file->setMimeType( 'text/csv' );
try {
$createdFile = $this->drive->files->insert($file, array(
'data' => $data,
'mimeType' => 'application/vnd.google-apps.spreadsheet'
), array('convert'=>true));
// Uncomment the following line to print the File ID
// print 'File ID: %s' % $createdFile->getId();
$additionalParams = array(
'newRevision' => false,
'data' => $data,
'convert'=>true //no change if this is true or false
);
$newFile = $this->drive->files->get( $createdFile->getId() );
$newFile->setMimeType('text/csv');
$updated = $this->drive->files->update($createdFile->getId(), $newFile, $additionalParams);
preint_r($updated);
} catch (Exception $e) {
print "An error occurred: " . $e->getMessage();
}
我已经查看了Google Drive的API,但没有找到任何有用的信息。我想知道是否应该只使用Google Spreadsheets API还是同时使用Google Drive API?
非常感谢, Waldemar