关于文件上传的问题

sunnystroller 2004-09-14 01:19:10
问题1:
请问如何才能实现把一个图片文件以二进制数据流的形式写到虚拟主机上去?而且他们的虚拟主 机禁止http引用
问题2:
读取客户端文件的数据流和读取服务器端文件的数据流如何来区分?能给个例子吗?
...全文
160 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
daosh 2004-09-16
  • 打赏
  • 举报
回复
帮顶
sunnystroller 2004-09-16
  • 打赏
  • 举报
回复
怎么没人来啊
sunnystroller 2004-09-14
  • 打赏
  • 举报
回复
我是想从那个字符串数组(存储了文件在客户端机器里的绝对路径)里读出客户端的文件,然后以数据流的形式写到服务器上去,该如何来实现啊?
我的代码如下:
FileStream fs = new FileStream(strAryFileName_old[i].ToString(), FileMode.Open, FileAccess.Read);
BinaryReader r = new BinaryReader(fs);
try
{
byte[] postArray = r.ReadBytes((int)fs.Length);
Stream postStream = myWebClient.OpenWrite(strUri,"PUT");
if(postStream.CanWrite)
{
postStream.Write(postArray,0,postArray.Length);
}
else
{
//Response.Write("<script>alert('对不起,没有写权限!!');</script>");
}
postStream.Close();
}
但是在运行时FileStream 对象读取的是服务器端的文件,如何才能读取客户段的文件啊??
sunnystroller 2004-09-14
  • 打赏
  • 举报
回复
我的文件名在一个字符串数组里,是从一个Html编辑器中取出来的,不能用HttpPostedFile吧?
goody9807 2004-09-14
  • 打赏
  • 举报
回复
namespace UploadSample {


public class Main : System.Web.UI.Page {


protected System.Web.UI.HtmlControls.HtmlInputFile UP_FILE;

protected System.Web.UI.WebControls.TextBox txtDescription;

protected System.Web.UI.WebControls.Label txtMessage;

protected System.Int32 FileLength = 0;


protected void Button_Submit(System.Object sender, System.EventArgs e) {

System.Web.HttpPostedFile UpFile = UP_FILE.PostedFile;

FileLength = UpFile.ContentLength;


try {


if (FileLength == 0) {


txtMessage.Text = "<b>*请选择上传的文件</b>";


} else {


System.Byte[] FileByteArray = new System.Byte[FileLength];

System.IO.Stream StreamObject = UpFile.InputStream;

StreamObject.Read(FileByteArray,0,FileLength);

System.Data.OleDb.OleDbConnection Con = new System.Data.OleDb.OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;" +

"Integrated Security=SSPI;Initial Catalog=northwind");

System.String SqlCmd = "INSERT INTO Images (Image, ContentType, ImageDescription, ByteSize) VALUES (?, ?, ?, ?)";

System.Data.OleDb.OleDbCommand OleDbCmdObj = new System.Data.OleDb.OleDbCommand(SqlCmd, Con);

OleDbCmdObj.Parameters.Add("@Image", System.Data.OleDb.OleDbType.Binary, FileLength).Value = FileByteArray;

OleDbCmdObj.Parameters.Add("@ContentType", System.Data.OleDb.OleDbType.VarChar,50).Value = UpFile.ContentType;

OleDbCmdObj.Parameters.Add("@ImageDescription", System.Data.OleDb.OleDbType.VarChar,100).Value = txtDescription.Text;

OleDbCmdObj.Parameters.Add("@ByteSize", System.Data.OleDb.OleDbType.VarChar,100).Value = UpFile.ContentLength;

Con.Open();

OleDbCmdObj.ExecuteNonQuery();

Con.Close();

txtMessage.Text = "<p><b>* 图片上传成功!</b>";


}


} catch (System.Exception ex) {


txtMessage.Text = ex.Message.ToString();


}

}

}

}

sunnystroller 2004-09-14
  • 打赏
  • 举报
回复
我们是租用的空间
sunnystroller 2004-09-14
  • 打赏
  • 举报
回复
就是服务器
noahart 2004-09-14
  • 打赏
  • 举报
回复
虚拟主机?vm?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧