Google 驱动器 Api 崩溃 Excel 文件
Google Drive Api crashes Excel file
我正在尝试编写简单的 java 应用程序,它使用 Google 驱动器 Api 上传 Excel 文件。我创建了扩展名为 .xlsx 的文件并创建了空测试 sheet。所以我使用 Google Drive Api 并将此文件上传到我的驱动器中。问题是直接在驱动器上打开这个文件后我看到一些奇怪的字符(好像它崩溃了)
文件代码和照片:
File fileMetadata = new File();
fileMetadata.setName("My");
fileMetadata.setMimeType("application/vnd.google-apps.spreadsheet");
java.io.File filePath = new java.io.File("src/main/sheets/wb5.xlsx");
FileContent mediaContent = new FileContent("text/csv", filePath);
File file = driveService.files().create(fileMetadata, mediaContent)
.setFields("id")
.execute();
System.out.println("File ID: " + file.getId());
解决发现:要使用 .xlsx 文件,您必须更改 mimeType:
File fileMetadata = new File();
fileMetadata.setName("My");
String mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
fileMetadata.setMimeType(mimeType);
java.io.File filePath = new java.io.File("src/main/sheets/wb5.xlsx");
FileContent mediaContent = new FileContent(mimeType, filePath);
File file = driveManager.utils().getDriveService().files().create(fileMetadata, mediaContent)
.setFields("id")
.execute();
我正在尝试编写简单的 java 应用程序,它使用 Google 驱动器 Api 上传 Excel 文件。我创建了扩展名为 .xlsx 的文件并创建了空测试 sheet。所以我使用 Google Drive Api 并将此文件上传到我的驱动器中。问题是直接在驱动器上打开这个文件后我看到一些奇怪的字符(好像它崩溃了) 文件代码和照片:
File fileMetadata = new File();
fileMetadata.setName("My");
fileMetadata.setMimeType("application/vnd.google-apps.spreadsheet");
java.io.File filePath = new java.io.File("src/main/sheets/wb5.xlsx");
FileContent mediaContent = new FileContent("text/csv", filePath);
File file = driveService.files().create(fileMetadata, mediaContent)
.setFields("id")
.execute();
System.out.println("File ID: " + file.getId());
解决发现:要使用 .xlsx 文件,您必须更改 mimeType:
File fileMetadata = new File();
fileMetadata.setName("My");
String mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
fileMetadata.setMimeType(mimeType);
java.io.File filePath = new java.io.File("src/main/sheets/wb5.xlsx");
FileContent mediaContent = new FileContent(mimeType, filePath);
File file = driveManager.utils().getDriveService().files().create(fileMetadata, mediaContent)
.setFields("id")
.execute();