大家好我正在尝试创建一个可以从Google云端硬盘(我的驱动器)打开和/或下载PDF文件的应用程序(C#Windows窗体应用程序)
这是使用Adobe PDF Reader(AxAcroPDF)从硬盘打开PDF文件的示例方法:
private void btn_OpenPDF_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "PDF Files (*.pdf)|*.pdf";
ofd.Title = "Open an PDF file";
if (ofd.ShowDialog() == DialogResult.OK)
{
apr_OpenPDF.src = ofd.FileName;
}
}
但是如何从Google云端硬盘阅读PDF文件?
感谢您的帮助,对不起我的英语
答案 0 :(得分:0)
您可以使用Google Drive API打开,下载和转换文件。当用户从Google文档的“打开方式”菜单中选择应用时,云端硬盘会将用户重定向到所选应用程序的“打开网址”。来自用户浏览器的重定向请求在状态参数中包含以下重要信息:
使用files.export
方法下载和转换文件内容。
var fileId = "1ZdR3L3qP4Bkq8noWLJHSr_iBau0DNT4Kli4SxNc2YEo";
var request = driveService.Files.Export(fileId, "application/pdf");
var stream = new System.IO.MemoryStream();
// Add a handler which will be notified on progress changes.
// It will notify on each chunk download and when the
// download is completed or failed.
request.MediaDownloader.ProgressChanged +=
(IDownloadProgress progress) =>
{
switch(progress.Status)
{
case DownloadStatus.Downloading:
{
Console.WriteLine(progress.BytesDownloaded);
break;
}
case DownloadStatus.Completed:
{
Console.WriteLine("Download complete.");
break;
}
case DownloadStatus.Failed:
{
Console.WriteLine("Download failed.");
break;
}
}
};
request.Download(stream);