简体   繁体   English

我的图片框图像未使用 Api 保存到 Dropbox 文件夹

[英]My picturebox image is not saving to dropbox folder using Api

here is my Code:这是我的代码:

static string token = "<REDACTED>";


async Task Upload()
{        
    using (var dbx = new DropboxClient(token))

    {
        //C: \Users\home\Downloads\abba.JPG

        //string file = @"C:\Users\home\Downloads\FazalNEwTEst.JPG";
        string folder = "";
        string filename = "EziTest-2-jun-2020.JPG";
        string url = pictureBox1.Image.ToString();

        ImageConverter converter = new ImageConverter();
        byte[] bytes = (byte[])converter.ConvertTo(pictureBox1.Image, typeof(byte[]));
        string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
        var mem = new MemoryStream(File.ReadAllBytes(base64String));
        //using ()
        //{
            var updated = dbx.Files.UploadAsync(folder + "/" + filename, WriteMode.Overwrite.Instance, body: mem);
            updated.Wait();
            var tx = dbx.Sharing.CreateSharedLinkWithSettingsAsync(folder + "/" + filename);
            tx.Wait();
            url = tx.Result.Url;

        //}

        //Console.Write(url)
    }
}

The button Click code is:按钮点击代码为:

private void button1_Click(object sender, EventArgs e)
{       
    var awt = Task.Run((Func<Task>)this.Upload);
    awt.Wait();
}

When i click on image picturebox image should be saved to dropbox folder using token of Api.当我单击图像时,图片框图像应使用 Api 的令牌保存到保管箱文件夹。 But actually it gives me error which is但实际上它给了我错误

DirectoryNotFoundException: Could not find a part of the path 'E:\visual studio projects\Windows form Application tutorials\Dropbox Api Demo\Dropbox Api Demo\bin\Debug\iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABGdBTUEAALGPC\xhBQAAA1FJREFUeF7t2ttLVFEcxXH\qKjogmWWRplaSEkWQUIPQkkQShTZlbySZqKZEZTVQzcIIgiKUMtSpEC6IFbmZRzHchwVEkd27OEneNyBOM1h1tlnfWE9neM87A8y4xlTGGOMMWZx11rvKs79yXEvn775YEu72tncw7kwfbYrBtE\uKqxj3Nh+mwJAjSCgI0gYCMI2AgCNoKAjSBgIwjYCAI2goAtLhA+y3JvcT3L4tyfHPfylVbeUP0\RxRzJ322+ozluJePIO5GELAIAhZBwCIIWAQBiyBgEQQsgoBFELAIAhZBwCIIWAQBiyBgEQQsz4J0dHarx0+fJ3RDIwF59eTlWZDikrNq9aashO7FqzZ59eRFkEUjyH+UaJC1adlqYHBIXj15eRbkZFm52pKVH9f04S8FOVdeK6+c3DwLEm+h8V9qY8YeB8b69FyIN3Sd70Au1zQ4MPQqaxvlavLzFUggOKY2bN3twNC\LWOhcbkj+fkK5FLVVQeGXn3TLbmKkW9AAqPB2HvFYoy0HXtVeDIid2DkG5ALFXUODL2mm61yFSdfgAwOB9S69BwHRmpmnpoIT8odOPkCpOJKowNDr6a+Wa5iZT1IZGpapW7Pc2Do35bRYEjuwMp6kDv3Hzkw9E6fr5KreFkNMj8\r3LyCw2Qj72f5Q68rAZ5+brDwCgoPCZXMbMa5MjRUgNEfx DirectoryNotFoundException: Could not find a part of the path 'E:\visual studio projects\Windows form Application tutorials\Dropbox Api Demo\Dropbox Api Demo\bin\Debug\iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABGdBTUEAALGPC\xhBQAAA1FJREFUeF7t2ttLVFEcxXH\qKjogmWWRplaSEkWQUIPQkkQShTZlbySZqKZEZTVQzcIIgiKUMtSpEC6IFbmZRzHchwVEkd27OEneNyBOM1h1tlnfWE9neM87A8y4xlTGGOMMWZx11rvKs79yXEvn775YEu72tncw7kwfbYrBtE\uKqxj3Nh+mwJAjSCgI0gYCMI2AgCNoKAjSBgIwjYCAI2goAtLhA+y3JvcT3L4tyfHPfylVbeUP0\RxRzJ322+ozluJePIO5GELAIAhZBwCIIWAQBiyBgEQQsgoBFELAIAhZBwCIIWAQBiyBgEQQsz4J0dHarx0 +fJ3RDIwF59eTlWZDikrNq9aashO7FqzZ59eRFkEUjyH+UaJC1adlqYHBIXj15eRbkZFm52pKVH9f04S8FOVdeK6+c3DwLEm+h8V9qY8YeB8b69FyIN3Sd70Au1zQ4MPQqaxvlavLzFUggOKY2bN3twNC\LWOhcbkj+fkK5FLVVQeGXn3TLbmKkW9AAqPB2HvFYoy0HXtVeDIid2DkG5ALFXUODL2mm61yFSdfgAwOB9S69BwHRmpmnpoIT8odOPkCpOJKowNDr6a+Wa5iZT1IZGpapW7Pc2Do35bRYEjuwMp6kDv3Hzkw9E6fr5KreFkNMj8\r3LyCw2Qj72f5Q68rAZ5+brDwCgoPCZXMbMa5MjRUgNEfx GFnLUgX\v6DQz9mGRqekbuwMxakOq66wYI8pv5QlaCRKNRlZl7wADp7OqRO3CzEqTtzXsDIyOnIPapCz0rQc5crDZA9LMsL2QdyNxcNPY17VKQ9rddcgd21oG86\5gYOhHJ7Ozs3IHdtaB GFnLUgX\v6DQz9mGRqekbuwMxakOq66wYI8pv5QlaCRKNRlZl7wADp7OqRO3CzEqTtzXsDIyOnIPapCz0rQc5crDZA9LMsL2QdyNxcNPY17VKQ9rddcgd21oG86\5gYOhHJ7Ozs3IHdtaB

Try to change the lines尝试改变线条

byte[] bytes = (byte[])converter.ConvertTo(pictureBox1.Image, typeof(byte[]));
string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
var mem = new MemoryStream(File.ReadAllBytes(base64String));

To

byte[] bytes = (byte[])converter.ConvertTo(pictureBox1.Image, typeof(byte[]));
var mem = new MemoryStream(bytes);

You don't need to convert the byte array to a base64 string .您不需要将byte数组转换为 base64 string It is the code File.ReadAllBytes(base64String) that tries to read the file with the gibberish name from disk代码File.ReadAllBytes(base64String)试图从磁盘读取带有乱码名称的文件

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM