到目前为止,我的应用程序允许用户通过文件选择器选择图像并通过 FTP 通过文件流上传:
Stream ftpStream = request.GetRequestStream();
FileStream file = File.OpenRead(fileToUpload);
length = 1024;
buffer = new byte[length];
do
{
bytesRead = file.Read(buffer, 0, length);
ftpStream.Write(buffer, 0, bytesRead);
totalReadBytesCount += bytesRead;
var progress = totalReadBytesCount * 100.0 / totalToUpload;
backgroundWorker1.ReportProgress((int)progress);
}
while (bytesRead != 0);
这工作正常。选择的图像保存为文件,然后上传。
但是,现在,我希望将其保存为“图像”,以便我可以调整它的大小等。这样代码将是:
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
image = Image.FromFile(openFileDialog1.FileName);
}
相对于:
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
file = openFileDialog1.FileName;
}
因此,我的问题是:
现在我选择的文件是一个图像文件。如何将其转换为文件流?如果这不能轻松完成,那么我将如何通过 ftp 上传图像?提前致谢。