que modificar lenguaje leer escribir eliminar datos como cargar borrar binarios binario archivos archivo c# filestream gdata google-docs-api google-drive-sdk

modificar - Cómo cargar/actualizar el archivo por FileStream y ResumableUploader en C#



modificar un archivo binario en c (1)

Pruebe el siguiente código:

DocumentsService service = new DocumentsService("MyDocumentsListIntegration-v1"); ClientLoginAuthenticator authenticator = new ClientLoginAuthenticator(APPLICATION_NAME, ServiceNames.Documents, USERNAME, PASSWORD); string slug = "Legal contract"; MediaFileSource mediaSource = new MediaFileSource("c://contract.txt", "text/plain"); Uri createUploadUrl = new Uri("https://docs.google.com/feeds/upload/create-session/default/private/full?v=3"); ResumableUploader ru = new ResumableUploader(); ru.InsertAsync(authenticator, createUploadUrl, mediaSource.GetDataStream(), mediaSource.ContentType, slug, new object());

¿Quiero subir / actualizar el archivo por System.IO.FileStream en la API de la lista de documentos de Google (C #)?

Uso dos vías a continuación: Google.GData.Client.ResumableUpload.ResumableUploader
(1) public void UpdateAsync (Autenticación del autenticador, carga útil AbstractEntry, object userData)
(2) public void UpdateAsync (autentificación del autenticador, Uri resumableUploadUri, carga útil de Stream, string contentType, object userData)

(1) Éxito.
(2) Falló con 403 Prohibido u otro ...

Entonces, ¿alguien tiene algún código de muestra sobre (2)?

Mi código para (2): este código está editado por código de muestra de Claudio Cherubino , y es un trabajo para cargar el flujo de archivos a Google Documents (Drive). Pero el nombre del archivo (DocumentEntry) muestra ''Sin título'' en la página de Google Drive. Parece que ''slug'' no funciona. ¿Extraño algunas configuraciones importantes?

Google.GData.Documents.DocumentsService conn = new Google.GData.Documents.DocumentsService("TestSend"); conn.setUserCredentials("UserName", "UserPass"); string path = @"D:/test_file/test.exe"; Google.GData.Client.ResumableUpload.ResumableUploader send = new Google.GData.Client.ResumableUpload.ResumableUploader(); send.AsyncOperationCompleted += new Google.GData.Client.AsyncOperationCompletedEventHandler( delegate(object sender, Google.GData.Client.AsyncOperationCompletedEventArgs e) { System.Windows.Forms.MessageBox.Show("File Send Done"); } ); System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Open, System.IO.FileAccess.ReadWrite); send.InsertAsync( new Google.GData.Client.ClientLoginAuthenticator("TestSend", "writely", this._DiskConn.Credentials), new System.Uri("https://docs.google.com/feeds/upload/create-session/default/private/full?v=3"), fs, "application/octet-stream", System.IO.Path.GetFileName(path), new object() );