#c# #visual-studio-2010
#c# #visual-studio-2010
Вопрос:
Как извлечь весь исходный код из одного проекта c # в один файл? Предпочтительно не путем копирования-вставки?
Комментарии:
1. Включен созданный дизайнером код? существует много скрытого кода, вам это нужно?
2. проект zip-папки? чего вы хотите достичь?
3. Я хочу записать алгоритм, чтобы позже иметь возможность претендовать на авторские права.
Ответ №1:
очень простой подход с командной строкой
for %f in (*.cs) do type %f >> result.txt
Редактировать:
С рекурсией и информацией о файле
for /R %f in (*.cs) do echo ----- %f ----- >> result.txt amp; type %f >> result.txt
Комментарии:
1. Обрабатывает ли это рекурсию каталога?
2. Да — это синтаксис командной строки Windows
Ответ №2:
Просто передайте путь к каталогу решения из командной строки.
class Program
{
static StringBuilder builder = new StringBuilder();
static void Main(string[] args)
{
if (args.Length == 0)
return;
string directory = args[0];
ProcessDirectories(directory);
// Save file here
}
static void ProcessDirectories(string root)
{
ProcessDirectory(new DirectoryInfo(root));
var subDirectories = Directory.GetDirectories(root);
if (subDirectories.Length == 0)
return;
foreach (var subDirectory in subDirectories)
{
ProcessDirectories(subDirectory);
}
}
static void ProcessDirectory(DirectoryInfo directory)
{
foreach (var file in directory.EnumerateFiles())
{
builder.AppendFormat("----- {0} -----", file.FullName);
using (var reader = file.OpenText())
{
builder.AppendLine(reader.ReadToEnd());
}
}
}
}
Надеюсь, это поможет!