gpt4 book ai didi

c# - 如何使用 FtpWebRequest 上传图片?

转载 作者:行者123 更新时间:2023-11-30 13:39:20 27 4
gpt4 key购买 nike

我一直致力于为客户构建一项功能,使他们能够从 www.site1.com 上传图像,将图像 URL 存储到数据库并将图像存储到 www.site2.com/images 上的文件中.我已经设法将文件上传到目标位置,但是当我尝试打开并查看图像时,据说它包含错误。我从来没有真正接触过图像,所以我很茫然。

这是用于上传文件的方法:

public static void UpLoadImage(Stream image, string target)
{
FtpWebRequest req = (FtpWebRequest)WebRequest.Create("ftp://www.site2.com/images/" + target);
req.UseBinary = true;
req.Method = WebRequestMethods.Ftp.UploadFile;
req.Credentials = new NetworkCredential("myUser", "myPass");
StreamReader rdr = new StreamReader(image);
byte[] fileData = Encoding.UTF8.GetBytes(rdr.ReadToEnd());

rdr.Close();
req.ContentLength = fileData.Length;
Stream reqStream = req.GetRequestStream();
reqStream.Write(fileData, 0, fileData.Length);
reqStream.Close();
}

这是调用方法的地方(image1 是一个 HttpPostedFileBase):

myObject.UpLoadImage(image1.InputStream, storedTL.ID + "-1.png");

如果我有办法让这段代码正常工作,或者如果有更好的方法,请提供帮助。

最佳答案

StreamReader 用于读取文本。

改变:

StreamReader rdr = new StreamReader(image);
byte[] fileData = Encoding.UTF8.GetBytes(rdr.ReadToEnd());

byte[] fileData = File.ReadAllBytes(image);

关于c# - 如何使用 FtpWebRequest 上传图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12380429/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com