将文档上传到Google云端硬盘时丢失换行符

时间:2012-10-22 10:56:32

标签: android google-drive-api

将文档上传到Google云端硬盘后,我的换行符松散了。将文档作为文本文件上传时,它可以工作:

    ByteArrayContent content = ByteArrayContent.fromString("text/plain", body);

    File uploadedFile =  drive.files().update(
            file.getId(), file, content).setSetModifiedDate(true).execute();

但是当我添加setConvert(true)以将文件上传为Google文档时,我放松了换行符。

    ByteArrayContent content = ByteArrayContent.fromString("text/plain", body);
    File uploadedFile =  drive.files().update(
            file.getId(), file, content).setConvert(true).setSetModifiedDate(true).execute();

我尝试在字符串中添加不同类型的换行符(例如'\ r','\ n',甚至尝试使用两者)。有人知道我做错了吗?

修改

所以我发现我的新文件插入有效。当我对文件内容进行更新时,我会松开我的换行符。 这是我的插页,它可以工作。

  ByteArrayContent content = ByteArrayContent.fromString("text/plain", body);
  drive.files().insert(file, content).setConvert(true).execute();

这是我的更新。现在我放松了换行符。

  ByteArrayContent content = ByteArrayContent.fromString("text/plain", body);
  File updatedFile =  drive.files().update(
            driveFile.getId(), driveFile, content).setConvert(true).execute();

1 个答案:

答案 0 :(得分:0)

发现问题所在。在更新文档之前,我下载了元数据:

File driveFile = drive.files().get(resourceID).execute();

此文件具有mime类型作为Google文档。在更新之前,我不得不将mimetype重置为“text / plain”