如何将已经上传的Excel文件转换为Google的电子表格格式?



我需要将已经上传到Google Drive的Excel文件转换为Google的电子表格格式。用编程的方式做到这一点的最佳方式是什么?

我找到了这篇文章(#15),但我不知道如何使用这段代码。它似乎是为尚未存储在Drive上的Excel文件设计的。再上传一次就多余了。

对于那些偶然发现这一点的人:这在Drive API v2 &v3。Python示例:

API v2:

drive_service_v2.files().copy(body=body, fileId="0n3xrtmjFpuG3V1g3h24tVHM2a33", convert="true").execute()

API v3:

new_mime_type = "application/vnd.google-apps.spreadsheet"
file_id_of_Excel_file = "0n3xrtmjFpuG3V1g3h24tVHM2a33"
body = {'name': 'New File Name', 'mimeType': new_mime_type}        
drive_service.files().copy(body=body, fileId=file_id_of_Excel_file).execute()

不幸的是,您不能就地转换文件,您需要重新上传它。下面的示例展示了如何使用驱动器中已有的XLSX文件:

function convert(xlsxFileId) { 
  var xlsxBlob = DriveApp.getFileById(xlsxFileId).getBlob();
  var file = {
    title: 'Converted Spreadsheet'
  };
  file = Drive.Files.insert(file, xlsxBlob, {
    convert: true
  });
}

Google Driver V3 API中,只需要设置MimeType

File file = new File();
file.MimeType = "application/vnd.google-apps.spreadsheet"

最新更新