title: Some file operations with DocumentsProvider API on Android
body: <p>DocumentsProvider API is the only official way to manage files on the removable storage since Android 5.0. But, seems, it does not support even basic functionality. Or, maybe, I missed something?</p>
  
  <ol>
  <li><p>Create a new document (file) with a non-standard extension.<br>
  <code>DocumentsContract.createDocument(contentResolver, uri, mimeType, name)</code><br>
  appends an extension according to the mimeType. For example, it adds <code>.txt</code> for 'text/plain' MIME-type. The question is: Can I create a file with the name <code>file.abc</code>? If no, can I register a new MIME-type, which will be linked to <code>abc</code> extension?</p></li>
  <li><p>Move a document.<br>
  <code>DocumentsContract.renameDocument(contentResolver, uri, newName)</code><br>
  can rename a document. But can I move a document into another directory (change the parent of the document)? Must I create a new document, copy the content from the old one, and delete the old document?</p></li>
  <li><p>Set the modification date of the document.<br>
  This operation can be useful in some situation. For example, in the case I must emulate filesystem <code>move</code> operation for the question 2. Is there a way to set any required modification time for a document?</p></li>
  </ol>