本文介绍了c#中的driveinfoclass实现的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 先生!我已经为driveinfo类编写了代码但显示错误。 代码如下: 使用系统; 使用 System.Collections.Generic; 使用 System.Text; 使用 System.IO; namespace directoryinfo1 { public class demoimplement { public static void copyallfiles(DirectoryInfo source,DirectoryInfo target) { if (source.FullName.ToLower()== target.FullName.ToLower()) { return ; } if (Directory.Exists(target.FullName)== false ) { Directory.CreateDirectory(target.FullName); } foreach (FileInfo fi in source.GetFiles()) { Console.WriteLine( @ 复制文件{0} \ {1},target.FullName,fi.Name); fi.CopyTo(Path.Combine(target.ToString(),fi.Name), true ); } foreach (DirectoryInfo disourcesubdir in source.GetDirectories()) { DirectoryInfo nexttargetsubdir = target.CreateSubdirectory(disourcesubdir.Name); copyallfiles(disourcesubdir,nexttargetsubdir); } } } public class test { public static void Main( string [] args) { string sourcedirectory = @ D:\\c# ; string targetDirectory = @ E:\\ \\\tushky; DirectoryInfo sourcedir = new DirectoryInfo(sourcedirectory); DirectoryInfo targetdir = new DirectoryInfo(targetDirectory); copyallfiles(sourcedir,targetdir); Console.ReadLine(); } } } 错误是: 错误1当前上下文中不存在名称'copyallfiles'。 解决方案 你不能直接从 main 方法调用 copyallfiles 。 copyallfiles 是一个静态方法,它是 demoimplement 类的一部分。 因此,您可以调用 demoimplement.copyallfiles(sourcedir,targetdir); 而不是直接调用它。 或者你可以创建一个 demoimplement 的实例。在这种情况下,无需将 copyallfiles 标记为静态。 sir ! i have written a code for driveinfo class but showing error.the code is below:using System;using System.Collections.Generic;using System.Text;using System.IO;namespace directoryinfo1{ public class demoimplement { public static void copyallfiles(DirectoryInfo source, DirectoryInfo target) { if (source.FullName.ToLower() == target.FullName.ToLower()) { return; } if (Directory.Exists(target.FullName) == false) { Directory.CreateDirectory(target.FullName); } foreach (FileInfo fi in source.GetFiles()) { Console.WriteLine(@"copying files {0}\{1}", target.FullName, fi.Name); fi.CopyTo(Path.Combine(target.ToString(), fi.Name), true); } foreach (DirectoryInfo disourcesubdir in source.GetDirectories()) { DirectoryInfo nexttargetsubdir = target.CreateSubdirectory(disourcesubdir.Name); copyallfiles(disourcesubdir, nexttargetsubdir); } } } public class test { public static void Main(string[] args) { string sourcedirectory = @"D:\\c#"; string targetDirectory = @"E:\\tushky"; DirectoryInfo sourcedir = new DirectoryInfo(sourcedirectory); DirectoryInfo targetdir = new DirectoryInfo(targetDirectory); copyallfiles(sourcedir,targetdir); Console.ReadLine(); } }}the error is:Error1The name 'copyallfiles' does not exist in the current context. 解决方案 这篇关于c#中的driveinfoclass实现的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-20 04:26