c#的一个控制台程序能不能生成三个不同功能的exe程序呢?该怎么处理
c#的一个控制台程序能不能生成三个不同功能的exe程序呢?
在一个控制台程序中包含实现以下功能的代码,
1.遍历某个,读取这个目录下的目录和文件全路径,并写到一个 txt 文件中
2.复制文件,使用 C# 实现文件复制功能
3.过滤文件,目录下,有txt文件,有jpg图片,或者有 zip 文件,把其中的文件按类型分在不同的目录下
分别实现三个 控台 EXE 程序。
三个EXE程序分别可以这样用:
1.生成 DirFileTreeInfo.exe
所遍历的目录通过参数指定
比如,要记录 D:盘下 games 目录中的内容,把读取到的 信息,写入到D:\gamesinfo.txt
.\DirFileTreeInfo.exe -d D:\games -o D:\gamesinfo.txt
2.生成 CopyFile.exe
所复制的文件和目标位置,通过参数指定
从D盘复制目录 games 到E盘
.\CopyFile.exe D:\games E:\games\
3.生成 PickFile.exe
所过滤的文件和目标位置,通过参数指定
比如:把目录 D:\games 下的 png 图片 复制到 D:\gamespng\ 下
\PickFile.exe -d D:\games -t png -o D:\gamespng
------解决方案--------------------
那你就把这个程序复制3份(3个Console工程),然后各取所需呗。
难道说你不会删代码?
------解决方案--------------------
一个project只应有一个主输出(exe或者dll或其他),一个solution可以包含多个project。
你只需要建立3个project,把输出文件夹调整到同一目录即可。
------解决方案--------------------
void Main(string[] args)
{
switch args[0]
{
case "-a":
功能1的代码;
break;
case "-b":
功能2的代码;
break;
case "-c":
功能3的代码;
break;
}
}
------解决方案--------------------
因为是三个应用程序,所以你就需要写三个控制台程序分别实现,下面是DirFileTreeInfo.exe的代码,用的时候直接调用cmd就可以了“..\..\DirFileTreeInfo.exe -d D:\games -o D:\gamesinfo.txt”,其中..\..\DirFileTreeInfo.exe要用绝对路径;对于CopyFile.exe和PickFile.exe,你自己参考着写写吧。
另外,就http://bbs.csdn.net/topics/390844819这个帖子而言,是因为你在使用args时没有传递参数造成的,所以在用cmd时,要正确传递参数
在一个控制台程序中包含实现以下功能的代码,
1.遍历某个,读取这个目录下的目录和文件全路径,并写到一个 txt 文件中
2.复制文件,使用 C# 实现文件复制功能
3.过滤文件,目录下,有txt文件,有jpg图片,或者有 zip 文件,把其中的文件按类型分在不同的目录下
分别实现三个 控台 EXE 程序。
三个EXE程序分别可以这样用:
1.生成 DirFileTreeInfo.exe
所遍历的目录通过参数指定
比如,要记录 D:盘下 games 目录中的内容,把读取到的 信息,写入到D:\gamesinfo.txt
.\DirFileTreeInfo.exe -d D:\games -o D:\gamesinfo.txt
2.生成 CopyFile.exe
所复制的文件和目标位置,通过参数指定
从D盘复制目录 games 到E盘
.\CopyFile.exe D:\games E:\games\
3.生成 PickFile.exe
所过滤的文件和目标位置,通过参数指定
比如:把目录 D:\games 下的 png 图片 复制到 D:\gamespng\ 下
\PickFile.exe -d D:\games -t png -o D:\gamespng
------解决方案--------------------
那你就把这个程序复制3份(3个Console工程),然后各取所需呗。
难道说你不会删代码?
------解决方案--------------------
一个project只应有一个主输出(exe或者dll或其他),一个solution可以包含多个project。
你只需要建立3个project,把输出文件夹调整到同一目录即可。
------解决方案--------------------
void Main(string[] args)
{
switch args[0]
{
case "-a":
功能1的代码;
break;
case "-b":
功能2的代码;
break;
case "-c":
功能3的代码;
break;
}
}
------解决方案--------------------
因为是三个应用程序,所以你就需要写三个控制台程序分别实现,下面是DirFileTreeInfo.exe的代码,用的时候直接调用cmd就可以了“..\..\DirFileTreeInfo.exe -d D:\games -o D:\gamesinfo.txt”,其中..\..\DirFileTreeInfo.exe要用绝对路径;对于CopyFile.exe和PickFile.exe,你自己参考着写写吧。
另外,就http://bbs.csdn.net/topics/390844819这个帖子而言,是因为你在使用args时没有传递参数造成的,所以在用cmd时,要正确传递参数
static void Main(string[] args)
{
if (args.Count() == 4)
{
string param1 = args[0];
string path1 = args[1];
string param2 = args[2];
string path2 = args[3];
if (param1 == "-d" && param2 == "-o")
{
string[] dics = Directory.GetDirectories(path1);
string[] files = Directory.GetFiles(path1);
using (StreamWriter sw = new StreamWriter(path2))
{
foreach (string d in dics)
{
sw.WriteLine(d);
}
foreach (string f in files)
{
sw.WriteLine(f);
}
sw.Close();
}
}