我用这种方法读取要上传的文件,目的是为了先判断txt内容格式,格式无误后再上传FileStream fs = new FileStream(this.file1.PostedFile.FileName,FileMode.Open,FileAccess.Read);
StreamReader m_streamReader = new StreamReader(fs);
m_streamReader.BaseStream.Seek(0,SeekOrigin.Begin);
string strLine = "";
strLine = m_streamReader.ReadLine ( ) ;
int ret = strLine.Length;对路径“C:\Documents and Settings\Administrator\桌面\4545.txt”的访问被拒绝。
若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。
我不可能在客户端进行提示的设置访问权限,如何解决?

解决方案 »

  1.   

    liujiayu10(持续学习) 
    File1.PostedFile.ContentType 不是取得本地路径
    要求是读取本地txt文本内容,现在系统不允许我读取,
    权限不够,有什么方法读取吗?
      

  2.   

    C:\Documents and Settings\Administrator\桌面\4545.txt
    改为
    c:\4545.txt
    放在C盘根目录下试试
      

  3.   

    File1.PostedFile.ContentType
    是取得要上传的文件的格式,比如是 bmp,word....,
    但是看你的样子,是希望取得文件的内容你当然不可以打开客户端的文件,但可以直接对得到的文件流进行操作
    Stream s= File1.PostedFile.InputStream;
      

  4.   

    charles_y(难得糊涂) 
    Stream s= File1.PostedFile.InputStream;这样读取如何取得文件流第一行?需要读取第一行来判断
      

  5.   

    try streamreader StreamReader reader=new StreamReader(s);
    ..
      

  6.   

    FileStream fs = new FileStream(this.file1.PostedFile.FileName,FileMode.Open,FileAccess.Read);
    这怎么是客户端的文件呢,这回打开服务器上this.file1.PostedFile.FileName路径的文件,
    要访问客户端用 vbscript的filesystemobject类
      

  7.   

    你不能上传可以用文件流进行操作。long length = this.File1.PostedFile.InputStream.Length;
    byte[] docData = new byte[length];
    this.File1.PostedFile.InputStream.Read(docData,0,Convert.ToInt32(length));
      

  8.   

    搞定!感谢大家,特别是charles_y(难得糊涂) ,结帖!
    改写
    Stream kk = this.file1.PostedFile.InputStream;
    StreamReader reader=new StreamReader(kk);
    Response.Write(reader.ReadLine().ToString());//读取第一行