高手看看VB.net转C#代码错误

6lilu9 2017-12-18 05:06:34
以下是同一个过程的vb.net代码与c#代码,我几乎是逐句翻译的,但运行结果死活不一样,头痛死了。

    Private Function FolderNames(ByVal strDirect As String) As ArrayList
Dim StrTemp As New ArrayList
If Not (strDirect Is Nothing) Then
Debug.Print("**********************************")
Debug.Print(strDirect)

'遍历文件夹
Dim mDirInfo As New System.IO.DirectoryInfo(strDirect)
Dim mDir As System.IO.DirectoryInfo
For Each mDir In mDirInfo.GetDirectories
FolderNames(mDir.FullName)
StrTemp.Add(mDir)
Next
End If
Return StrTemp
End Function


        static ArrayList  FolderNames(string strDirect)
{
ArrayList StrTemp = new ArrayList();
if (strDirect != null)
{
Console.WriteLine("**********************************");
Console.WriteLine("文件夹的路径:{0}", strDirect);

//遍历文件夹
DirectoryInfo mDirInfo =new DirectoryInfo(strDirect);
foreach (DirectoryInfo mDir in mDirInfo.GetDirectories())
{
FolderNames(mDir.FullName);
StrTemp.Add(mDir);
}

}
return StrTemp;
}

请高手解疑,谢谢。
...全文
441 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunylf 2018-02-27
  • 打赏
  • 举报
回复
遍历目录下的所有子目录,及文件名?
Jason_Mao1 2017-12-26
  • 打赏
  • 举报
回复
结果不一样,你把结果显示出来看看。才好判断问题 。你这是一个递归。才结果的不同来判断问题出在哪里 ,不能仅限于看代码。希望能帮助到你。
gc_2299 2017-12-26
  • 打赏
  • 举报
回复
我在VS里面跑C#这段代码没有问题啊,可以正常运行
gray55455 2017-12-26
  • 打赏
  • 举报
回复
我几乎是逐句翻译的,但运行结果死活不一样,头痛死了。 想问,怎么个不一样法?
gray55455 2017-12-26
  • 打赏
  • 举报
回复
我几乎是逐句翻译的,但运行结果死活不一样,头痛死了。
lovingkiss 2017-12-25
  • 打赏
  • 举报
回复
ArrayList的定义在函数体内,然后每次递归又不做返回处理,这就和狗熊掰棒子一样,掰一个目录扔一个目录。。。 代码本身就是有问题的。。。先别改造了,理清递归的理念先
exception92 2017-12-19
  • 打赏
  • 举报
回复
几乎是逐句翻译的,但运行结果死活不一样,头痛死。 -》调试程序呀,你只有逐行调试才能看出来哪里逻辑不对,你不调试 只凭看代码,效率很低的。 http://www.cnblogs.com/alexis/archive/2010/11/06/1870519.html
X-i-n 2017-12-19
  • 打赏
  • 举报
回复
你这代码本身就有点问题。 ArrayList的定义扔到方法外边去,这个递归方法不需要返回,而且本身你自己的代码里也没用到返回值。
秋的红果实 2017-12-18
  • 打赏
  • 举报
回复
VB不用return,将Return StrTemp改为FolderNames=StrTemp
正在加载昵称 2017-12-18
  • 打赏
  • 举报
回复
怎么不一样?楼主说说清楚呢

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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