日期:2014-05-18  浏览次数:20536 次

上传文件之后,读取文件内容的问题
我要上传一个文档之后,将文档中的内容赋给一个字符串,但是执行到
FileStream fs = new FileStream("phone/" + phonename, FileMode.OpenOrCreate, FileAccess.Read);
这句的时候,总是报找不到上传的文件的一部分。。
具体代码如下:  
  DateTime dt = DateTime.Now;
  string strTemp = File3.PostedFile.FileName;//获取上传文件的路径
  strTemp = strTemp.Substring(strTemp.LastIndexOf(".") + 1);//上传的文件名后缀 
  string phonename = Session["userName"].ToString() + "_" + dt.Year.ToString() + dt.Month.ToString() + dt.Day.ToString() + dt.Hour.ToString() + dt.Minute.ToString() + dt.Second.ToString() + dt.Millisecond.ToString() + "." + strTemp;//改名
  File3.PostedFile.SaveAs(Server.MapPath("phone/" + phonename));//上传
  //执行到这句就报错:找不到**的一部分
  FileStream fs = new FileStream("phone/" + phonename, FileMode.OpenOrCreate, FileAccess.Read);

  StreamReader sw = new StreamReader(fs, System.Text.Encoding.Default);

  string info = sw.ReadToEnd();

请大牛们指点一下。。。

------解决方案--------------------
FileStream fs = new FileStream("phone/" + phonename, FileMode.OpenOrCreate, FileAccess.Read); 
改为:
string path = "\\phonename\\" + phonename;
string strAbsolutePath = (Server.MapPath(".")) + path;
FileStream fs = new FileStreamstrAbsolutePath, FileMode.OpenOrCreate, FileAccess.Read);