2017-08-26 3 views
0

Googleは最近、フォームにファイルアップロード機能を追加しました。FILE_UPLOADアイテムタイプがGoogleフォーム

ただし、Googleスクリプトでこれを使用する方法に関するドキュメントは見つかりません。私はGoogleでのアイテムの種類のAPIを見れば、それは私が私のフォームでのタイプをチェックすると、私は「FILE_UPLOAD」 responseItem.getItem().getType() //returns FILE_UPLOAD

の種類を取得し、

https://developers.google.com/apps-script/reference/forms/item-type

しかし

に記載されていませんオブジェクトを見ると、それは文字列を持つ配列です。

私はファイル名を取得して名前を変更する方法を理解しようとしています。

+0

あなたの投稿の日付現在、Googleフォームによってアップロードされたファイルのファイル名を取得する組み込みの方法はありません。 Googleフォームがファイルをアップロードすると、ドライブに特別なフォルダが作成されます。そのフォルダの最後に "(File Response)"が付加されたファイルアップロード質問のタイトルが付けられます。そのフォルダで最新のファイルを検索できます。それ以外に、私はファイルを入手する他の方法を知らない。 –

答えて

0

これについて少し考えた後、私はFILE_UPLOADタイプによって返される文字列がおそらくgoogleドライブのファイルIDであることに気付きました。それは正しいことが分かります。したがって、DriveAppクラスを使用してファイルを取得し、名前を変更することができます。ここで

は、私はそれをやった方法です:

for (var f = 0; f < responseItems.length; f++) { 
    if (responseItems[f].getItem().getType() === "FILE_UPLOAD") { 
    files = responseItems[f].getResponse(); 
    if (files.length > 0) { 
     for (var n in files) { 
     var dFile = DriveApp.getFileById(files[n]); 
     dFile.setName("new name_" + n); 
     } 
    } 
    } 
} 

あなたがこれを実行すると、あなたは、ドライブ内のファイルにアクセスするためのスクリプトへのアクセス許可を与えることを求められます。

これは他の誰かがこれを理解しようとするのに役立ちます。

関連する問題