首页 新闻 会员 周边 捐助

未能找到路径“E:\Program\demo_ftp\ftp1\admin\

0
悬赏园豆:5 [待解决问题]

.NET读取网站根目录下面的A目录里所有文件内容时出现以下错误:我写的这段代码提示出错:
未能找到路径“E:\Program\demo_ftp\ftp1\admin\
我想实现根据我的特征码来比较某个目录下所有文件的内容里面有没有这些特征码;
详细代码如下:
//查找选择目录下所有文件列表
DirectoryInfo di = new DirectoryInfo(Server.MapPath(TextBox2.Text));
            FileSystemInfo[] fsi
= di.GetFileSystemInfos();
           
for (int i = 0; i < fsi.Length; i++)
            {
               
if (fsi[i].Name.Contains(".aspx") || fsi[i].Name.Contains(".txt") || fsi[i].Name.Contains(".htm"))
                {
                   
string Content = "";
                    StreamReader sr
= new StreamReader((Server.MapPath(TextBox2.Text))+"\\"+fsi[i].Name.Trim(), System.Text.Encoding.GetEncoding("gb2312"));
                    Content
= sr.ReadToEnd();
                    sr.Close();
                    txt_area.Text
+= Content;
                    Response.Write(fsi[i].Name
+ "<br/>");
                   
//Response.Write(Content);

                }
            }
           
//下面是比较的过程 
            StreamReader readerOfStream = new StreamReader(Server.MapPath(TextBox2.Text), System.Text.Encoding.Default);   //此句提示无法访问某个文件夹的权限
            string aa = readerOfStream.ReadToEnd();
            stream.Close();
           
for (int i = 0; i < pipei.Length; i++)
            {
               
if (txt_area.Text.Contains(pipei[i].Trim()))
                {
                    total
= total + 1;
                }

            }
           
if (total == 0)
            {
                Response.Write(
"没有查询到符合特证码的记录!");
            }
           
else
            {
                Response.Write(
"此次查询到:" + total + "条数据与特证码相匹配");
            }         

txt_area.txt为检查到的所有文件内容先存在这个控件里,textbox2为dropdownlist选择的目录暂时放在文本框里。
以上代码为按钮事件代码。
麻烦各位高手帮忙看下,小弟弄了二天了还没有搞定。。多谢了。

天亮说晚安的主页 天亮说晚安 | 菜鸟二级 | 园豆:205
提问于:2010-08-28 08:26
< >
分享
所有回答(4)
0

在哪一步出的错,这个路径存在吗,有权限没有。

Astar | 园豆:40805 (高人七级) | 2010-08-28 08:33
0

你是在服务器还是在本机,看看实际有没有这个路径。

生鱼片 | 园豆:5757 (大侠五级) | 2010-08-28 09:12
在本机测试的,我把读到的地址放在地址栏中能找到。
支持(0) 反对(0) 天亮说晚安 | 园豆:205 (菜鸟二级) | 2010-08-28 10:15
0

   StreamReader readerOfStream = new StreamReader(Server.MapPath(TextBox2.Text), System.Text.Encoding.Default);   //此句提示无法访问某个文件夹的权限

既然已经提示没权限了。把目录加上IIS_WPG,IUser等权限试试看

kyo-yo | 园豆:5587 (大侠五级) | 2010-08-28 10:26
加了还是不行。是不是Server.MapPath(TextBox2.Text)这个的毛病,路径指向的是内容,是不是这个原因导致找不到路径了。
支持(0) 反对(0) 天亮说晚安 | 园豆:205 (菜鸟二级) | 2010-08-28 11:04
@天亮说晚安:你先把Server.MapPath(TextBox2.Text)单独测试下看看,是否能指向到文件夹,如果能映射出实际的物理路径就不应该会错了
支持(0) 反对(0) kyo-yo | 园豆:5587 (大侠五级) | 2010-08-29 22:59
0

这个应该是路径问题了。你可以这样尝试一下:

1.直接测试一下 Server.MapPath(TextBox2.Text) 返回的字符串是否就是那个正确的物理路径。

2.直接用物理路径测试一下。StreamReader(物理路径, 

慧☆星 | 园豆:5722 (大侠五级) | 2010-08-29 10:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册