• 全部
  • .NET Framework
  • ASP
  • Web Services
  • .NET互联网桌面应用
  • VB
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • AppLauncher
  • 问答

简单问题,大家帮忙看一下了

sndy77 2003-08-22 01:49:01
我想列出C盘的根目录,代码如下:提示出错,不知错在哪儿?
——————————————————————————————————
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace Unique
{
public class BorwseFiles:Page
{
private System.Web.UI.WebControls.Label lbl_Text;
DirectoryInfo myDirectoryInfo;
DirectoryInfo[] dir;

private void Page_Load(object sender,System.EventArgs e)
{
myDirectoryInfo=new DirectoryInfo("c:\\");
dir=myDirectoryInfo.GetDirectories();
foreach(DirectoryInfo myDir in dir)
lbl_Text.Text=myDir.Name;
}
}
}
——————————————————————————-
出错住息:
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪:


[NullReferenceException: 未将对象引用设置到对象的实例。]
Unique.BorwseFiles.Page_Load(Object sender, EventArgs e) +106
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +29
System.Web.UI.Page.ProcessRequestMain() +724


...全文
51 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
sndy77 2003-08-23
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace Unique
{
public class BorwseFiles:Page
{
private System.Web.UI.WebControls.Label lb;
private void Page_Load(object sender,System.EventArgs e)
{
string[] dirs = Directory.GetDirectories(@"c:\","*.*");

foreach(string dir in dirs)
{
lb.Text+="<br>"+ dir;

}
}
}
}

还是不行.
回复
sndy77 2003-08-22
楼上的,改成你说的还是不行啊
------------------------------------------------
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace Unique
{
public class BorwseFiles:Page
{
private System.Web.UI.WebControls.Label lbl_Text;
string[] dirs = Directory.GetDirectories(@"c:\","*.*");

foreach(string dir in dirs)
{
lb.Text+ ="<br>"+ dir;

}

}
}
--------------------------------------------
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。

编译器错误信息: CS1519: 类、结构或接口成员声明中的标记“foreach”无效

源错误:



行 12: string[] dirs = Directory.GetDirectories(@"c:\","*.*");
行 13:
行 14: foreach(string dir in dirs)
行 15: {
行 16: lb.Text+ ="<br>"+ dir;

回复
xrll 2003-08-22
或先放一个:
<asp:label ID="lb" runat="server">
在代码中:
string[] dirs = Directory.GetDirectories(@"c:\","*.*");
foreach (string dir in dirs)
{
lb.Text+ ="<br>"+ dir;

}
回复
xrll 2003-08-22
先在页面放一个:
<asp:placeholder ID="pl" runat="server"/>
回复
xrll 2003-08-22
string[] dirs = Directory.GetDirectories(@"c:\","*.*");
foreach (string dir in dirs)
{

Label lb = new Label();
lb.Text = dir;
pl.Controls.Add(lb);
}
回复
xiangzionest 2003-08-22
是Label的原因,你把Label直接拖到界面,运行它就可以了,我做了测试,肯定可以了
回复
sndy77 2003-08-22
楼上的,试过了,不行啊
回复
chmodyou 2003-08-22
myDirectoryInfo=new DirectoryInfo("c://");
回复
sndy77 2003-08-22
各位快帮忙了,分不够再加了
回复
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2003-08-22 01:49
社区公告
暂无公告