| 2021/04/30(Fri) 17:20:42 編集(投稿者) 2021/04/30(Fri) 16:41:53 編集(投稿者) 2021/04/30(Fri) 16:41:29 編集(投稿者)
ヒントありがとうございます。 以下のように修正しました。
結果、出力で以下のエラーが出ます。 ビルドを開始しました... 1>------ ビルド開始: プロジェクト: ConsoleApp2, 構成: Release Any CPU ------ 1>C:\Users\konno\source\repos\ConsoleApp2\ConsoleApp2\Program.cs(43,2,43,2): error CS1513: } が必要です ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
つまり、43行目でエラーが出ているようなので43行目にマウスを近づけると CS1513: } が必要です と表示されました。
ネットで調べると コンパイラ エラー CS1513 は、「} が必要です。」と出ていたので } が不足していると思い追加すると 今度は、エラー無くConsoleApp2.exeが出力されました。
ビルドを開始しました... 1>------ ビルド開始: プロジェクト: ConsoleApp2, 構成: Release Any CPU ------ 1> ConsoleApp2 -> C:\Users\konno\source\repos\ConsoleApp2\ConsoleApp2\bin\Release\ConsoleApp2.exe ========== ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ ==========
-------------------------------------- これでOKとJ:\ttest以下にテスト用のDATAを作成してテスト走行しました ConsoleApp2.exeをJ:\ttestに配置してRUNするとエラーが出ませんが、一瞬でJ:\ttest内のDATAフォルダーを含めてが全て消え失せました。 作成されるであろう集められたファイルはありません。 つまり、J:\ttest内は空の状態でした。
参考フォルダー構造図 https://imgur.com/2eSw05j
どこか?認識の間違いやアドバイスがありますか ?
(以下は、最下行に}を追加する前の途中のコードです。)
using System; using System.IO; using System.Collections.Generic; using System.Linq;
namespace ZapAll { class Program { private static readonly char separator = Path.DirectorySeparatorChar;
static void Main(string[] args)
{ var TgtDir = Directory.GetCurrentDirectory(); var tgtFiles = new Dictionary<string, FileInfo>(); var allFiles = Directory.EnumerateFiles(TgtDir, "*", SearchOption.AllDirectories).Select(x => new FileInfo(x)); var allFileGrps = allFiles.ToLookup(x => x.Name); foreach (var files in allFileGrps) { int index = 0; foreach (var file in files) { var fname = file.Name; if (index++ > 0) { var fname_head = fname.Substring(0, fname.Length - file.Extension.Length); fname = string.Format("{0}_{1}.{2}", fname_head, index, file.Extension); } tgtFiles.Add(fname, file); } } foreach (var tgtFile in tgtFiles) { File.Move(tgtFile.Value.FullName, TgtDir + tgtFile.Key); } var allDirs = Directory.EnumerateDirectories(TgtDir, "*", SearchOption.AllDirectories); foreach (var dir in allDirs.Reverse()) { Directory.Delete(dir); } } } |