├── File Organizer.sln
├── File Organizer
├── App.config
├── File Organizer.csproj
├── File Organizer.csproj.user
├── File Organizer_TemporaryKey.pfx
├── Form1.Designer.cs
├── Form1.cs
├── Form1.resx
├── GradientPanel.cs
├── Program.cs
├── Properties
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── bin
│ └── Debug
│ │ ├── File Organizer.exe
│ │ ├── File Organizer.exe.config
│ │ └── File Organizer.pdb
└── obj
│ └── Debug
│ ├── .NETFramework,Version=v4.7.2.AssemblyAttributes.cs
│ ├── DesignTimeResolveAssemblyReferences.cache
│ ├── DesignTimeResolveAssemblyReferencesInput.cache
│ ├── File Organizer.csproj.CoreCompileInputs.cache
│ ├── File Organizer.csproj.FileListAbsolute.txt
│ ├── File Organizer.csproj.GenerateResource.cache
│ ├── File Organizer.csprojAssemblyReference.cache
│ ├── File Organizer.exe
│ ├── File Organizer.pdb
│ ├── File_Organizer.Form1.resources
│ └── File_Organizer.Properties.Resources.resources
├── LICENSE
├── README.md
└── screenshots
├── app1.PNG
├── app2.PNG
├── pasta.PNG
└── pasta2.PNG
/File Organizer.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 16
4 | VisualStudioVersion = 16.0.28809.33
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "File Organizer", "File Organizer\File Organizer.csproj", "{C0B57F33-E27E-44B0-86E8-90251EB91D6E}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {C0B57F33-E27E-44B0-86E8-90251EB91D6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {C0B57F33-E27E-44B0-86E8-90251EB91D6E}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {C0B57F33-E27E-44B0-86E8-90251EB91D6E}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {C0B57F33-E27E-44B0-86E8-90251EB91D6E}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {3BA582D8-06A2-4F3B-BD7F-8C139CFCBC2C}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/File Organizer/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/File Organizer/File Organizer.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {C0B57F33-E27E-44B0-86E8-90251EB91D6E}
8 | WinExe
9 | File_Organizer
10 | File Organizer
11 | v4.7.2
12 | 512
13 | true
14 | true
15 | F:\Desktop Apps\
16 | true
17 | Disk
18 | false
19 | Foreground
20 | 7
21 | Days
22 | false
23 | false
24 | true
25 | publish.htm
26 | true
27 | 0
28 | 1.0.0.%2a
29 | false
30 | false
31 | true
32 |
33 |
34 | AnyCPU
35 | true
36 | full
37 | false
38 | bin\Debug\
39 | DEBUG;TRACE
40 | prompt
41 | 4
42 |
43 |
44 | AnyCPU
45 | pdbonly
46 | true
47 | bin\Release\
48 | TRACE
49 | prompt
50 | 4
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 | Form
68 |
69 |
70 | Form1.cs
71 |
72 |
73 | Component
74 |
75 |
76 |
77 |
78 | Form1.cs
79 |
80 |
81 | ResXFileCodeGenerator
82 | Resources.Designer.cs
83 | Designer
84 |
85 |
86 | True
87 | Resources.resx
88 |
89 |
90 | SettingsSingleFileGenerator
91 | Settings.Designer.cs
92 |
93 |
94 | True
95 | Settings.settings
96 | True
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 | False
105 | Microsoft .NET Framework 4.7.2 %28x86 e x64%29
106 | true
107 |
108 |
109 | False
110 | .NET Framework 3.5 SP1
111 | false
112 |
113 |
114 |
115 |
--------------------------------------------------------------------------------
/File Organizer/File Organizer.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | pt-BR
11 | false
12 |
13 |
--------------------------------------------------------------------------------
/File Organizer/File Organizer_TemporaryKey.pfx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/File Organizer_TemporaryKey.pfx
--------------------------------------------------------------------------------
/File Organizer/Form1.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace File_Organizer
2 | {
3 | partial class Form1
4 | {
5 | ///
6 | /// Variável de designer necessária.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Limpar os recursos que estão sendo usados.
12 | ///
13 | /// true se for necessário descartar os recursos gerenciados; caso contrário, false.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Código gerado pelo Windows Form Designer
24 |
25 | ///
26 | /// Método necessário para suporte ao Designer - não modifique
27 | /// o conteúdo deste método com o editor de código.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.btn_select_folder = new System.Windows.Forms.Button();
32 | this.button1 = new System.Windows.Forms.Button();
33 | this.panel1 = new System.Windows.Forms.Panel();
34 | this.panel2 = new System.Windows.Forms.Panel();
35 | this.fileCount = new System.Windows.Forms.Label();
36 | this.label3 = new System.Windows.Forms.Label();
37 | this.currentFolder = new System.Windows.Forms.Label();
38 | this.label1 = new System.Windows.Forms.Label();
39 | this.panel2.SuspendLayout();
40 | this.SuspendLayout();
41 | //
42 | // btn_select_folder
43 | //
44 | this.btn_select_folder.BackColor = System.Drawing.Color.Transparent;
45 | this.btn_select_folder.FlatAppearance.BorderColor = System.Drawing.Color.White;
46 | this.btn_select_folder.FlatAppearance.MouseOverBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
47 | this.btn_select_folder.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
48 | this.btn_select_folder.Font = new System.Drawing.Font("Open Sans", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
49 | this.btn_select_folder.ForeColor = System.Drawing.SystemColors.ControlLightLight;
50 | this.btn_select_folder.Location = new System.Drawing.Point(305, 296);
51 | this.btn_select_folder.Name = "btn_select_folder";
52 | this.btn_select_folder.Size = new System.Drawing.Size(226, 50);
53 | this.btn_select_folder.TabIndex = 0;
54 | this.btn_select_folder.Text = "Select Folder";
55 | this.btn_select_folder.UseVisualStyleBackColor = false;
56 | this.btn_select_folder.Click += new System.EventHandler(this.Button1_Click);
57 | //
58 | // button1
59 | //
60 | this.button1.BackColor = System.Drawing.Color.Magenta;
61 | this.button1.FlatAppearance.BorderColor = System.Drawing.SystemColors.ControlLightLight;
62 | this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
63 | this.button1.Font = new System.Drawing.Font("Open Sans", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
64 | this.button1.ForeColor = System.Drawing.SystemColors.ControlLightLight;
65 | this.button1.Location = new System.Drawing.Point(305, 365);
66 | this.button1.Name = "button1";
67 | this.button1.Size = new System.Drawing.Size(226, 44);
68 | this.button1.TabIndex = 1;
69 | this.button1.Text = "Organize!";
70 | this.button1.UseVisualStyleBackColor = false;
71 | this.button1.Click += new System.EventHandler(this.Button1_Click_1);
72 | //
73 | // panel1
74 | //
75 | this.panel1.Location = new System.Drawing.Point(0, 0);
76 | this.panel1.Name = "panel1";
77 | this.panel1.Size = new System.Drawing.Size(200, 100);
78 | this.panel1.TabIndex = 2;
79 | //
80 | // panel2
81 | //
82 | this.panel2.AutoSize = true;
83 | this.panel2.BackColor = System.Drawing.Color.BlueViolet;
84 | this.panel2.Controls.Add(this.fileCount);
85 | this.panel2.Controls.Add(this.label3);
86 | this.panel2.Controls.Add(this.currentFolder);
87 | this.panel2.Controls.Add(this.label1);
88 | this.panel2.Controls.Add(this.button1);
89 | this.panel2.Controls.Add(this.btn_select_folder);
90 | this.panel2.Location = new System.Drawing.Point(0, 0);
91 | this.panel2.Name = "panel2";
92 | this.panel2.Size = new System.Drawing.Size(801, 519);
93 | this.panel2.TabIndex = 3;
94 | //
95 | // fileCount
96 | //
97 | this.fileCount.AutoSize = true;
98 | this.fileCount.Cursor = System.Windows.Forms.Cursors.IBeam;
99 | this.fileCount.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
100 | this.fileCount.Font = new System.Drawing.Font("Open Sans", 14.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
101 | this.fileCount.ForeColor = System.Drawing.SystemColors.ControlLightLight;
102 | this.fileCount.Location = new System.Drawing.Point(12, 170);
103 | this.fileCount.MinimumSize = new System.Drawing.Size(200, 20);
104 | this.fileCount.Name = "fileCount";
105 | this.fileCount.Size = new System.Drawing.Size(200, 26);
106 | this.fileCount.TabIndex = 5;
107 | this.fileCount.Click += new System.EventHandler(this.FileCount_Click);
108 | //
109 | // label3
110 | //
111 | this.label3.AutoSize = true;
112 | this.label3.BackColor = System.Drawing.SystemColors.ControlLightLight;
113 | this.label3.Cursor = System.Windows.Forms.Cursors.IBeam;
114 | this.label3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
115 | this.label3.Font = new System.Drawing.Font("Open Sans", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
116 | this.label3.ForeColor = System.Drawing.Color.BlueViolet;
117 | this.label3.Location = new System.Drawing.Point(12, 134);
118 | this.label3.Name = "label3";
119 | this.label3.Size = new System.Drawing.Size(122, 26);
120 | this.label3.TabIndex = 4;
121 | this.label3.Text = "Files Found:";
122 | this.label3.Click += new System.EventHandler(this.Label3_Click);
123 | //
124 | // currentFolder
125 | //
126 | this.currentFolder.AutoSize = true;
127 | this.currentFolder.Cursor = System.Windows.Forms.Cursors.IBeam;
128 | this.currentFolder.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
129 | this.currentFolder.Font = new System.Drawing.Font("Open Sans", 14.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
130 | this.currentFolder.ForeColor = System.Drawing.SystemColors.ControlLightLight;
131 | this.currentFolder.Location = new System.Drawing.Point(12, 86);
132 | this.currentFolder.MinimumSize = new System.Drawing.Size(200, 20);
133 | this.currentFolder.Name = "currentFolder";
134 | this.currentFolder.Size = new System.Drawing.Size(200, 26);
135 | this.currentFolder.TabIndex = 3;
136 | this.currentFolder.Click += new System.EventHandler(this.CurrentFolder_Click);
137 | //
138 | // label1
139 | //
140 | this.label1.AutoSize = true;
141 | this.label1.BackColor = System.Drawing.SystemColors.ControlLightLight;
142 | this.label1.Cursor = System.Windows.Forms.Cursors.IBeam;
143 | this.label1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
144 | this.label1.Font = new System.Drawing.Font("Open Sans", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
145 | this.label1.ForeColor = System.Drawing.Color.BlueViolet;
146 | this.label1.Location = new System.Drawing.Point(12, 50);
147 | this.label1.Name = "label1";
148 | this.label1.Size = new System.Drawing.Size(155, 26);
149 | this.label1.TabIndex = 2;
150 | this.label1.Text = "Current Folder:";
151 | //
152 | // Form1
153 | //
154 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 15F);
155 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
156 | this.ClientSize = new System.Drawing.Size(800, 519);
157 | this.Controls.Add(this.panel2);
158 | this.Controls.Add(this.panel1);
159 | this.Font = new System.Drawing.Font("Open Sans", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
160 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
161 | this.Name = "Form1";
162 | this.Text = "FO - File Organizer";
163 | this.panel2.ResumeLayout(false);
164 | this.panel2.PerformLayout();
165 | this.ResumeLayout(false);
166 | this.PerformLayout();
167 |
168 | }
169 |
170 | #endregion
171 |
172 | private System.Windows.Forms.Button btn_select_folder;
173 | private System.Windows.Forms.Button button1;
174 | private System.Windows.Forms.Panel panel1;
175 | private System.Windows.Forms.Panel panel2;
176 | private System.Windows.Forms.Label label1;
177 | private System.Windows.Forms.Label currentFolder;
178 | private System.Windows.Forms.Label fileCount;
179 | private System.Windows.Forms.Label label3;
180 | }
181 | }
182 |
183 |
--------------------------------------------------------------------------------
/File Organizer/Form1.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using System.Collections.Generic;
4 | using System.ComponentModel;
5 | using System.Data;
6 | using System.Drawing;
7 | using System.Linq;
8 | using System.Text;
9 | using System.Threading.Tasks;
10 | using System.Windows.Forms;
11 |
12 | namespace File_Organizer
13 | {
14 | public partial class Form1 : Form
15 | {
16 | string sSelectedFolder; // path to selected folder
17 | string[] files; // all filenames
18 | DirectoryInfo dir;
19 |
20 | public Form1()
21 | {
22 | InitializeComponent();
23 | string userName = Environment.UserName; // get user name
24 | sSelectedFolder = @"C:\Users\" + userName + @"\Downloads"; // use download folder as default
25 |
26 | files = Directory.GetFiles(sSelectedFolder); // load all files from download folder
27 | fileCount.Text = files.Length.ToString(); // how much files
28 | currentFolder.Text = sSelectedFolder; // print selected folder in window
29 | }
30 |
31 | private void Button1_Click(object sender, EventArgs e)
32 | {
33 |
34 | //
35 | //
36 | // Button, that selects custom folder
37 | //
38 | //
39 |
40 | sSelectedFolder = getPath(); // get user selected folder
41 | currentFolder.Text = sSelectedFolder; // print selected folder in window
42 | files = Directory.GetFiles(sSelectedFolder); // get all files
43 | fileCount.Text = files.Length.ToString(); // number of files
44 | }
45 |
46 | private void Button1_Click_1(object sender, EventArgs e)
47 | {
48 |
49 | //
50 | //
51 | //Button that calls organize function
52 | //
53 | //
54 |
55 | organize(); // call organize function
56 | }
57 |
58 | private void organize()
59 | {
60 | foreach (string name in files) // for each file in folder
61 | {
62 | if (getFolderNameByExtension(name) != "") // Calls function that retuns folder name for given file extension, if no folder name is returned, it will leave it as is
63 | {
64 | string pastaDestino = sSelectedFolder + @"\" + getFolderNameByExtension(name) + @"\" + Path.GetFileName(name); // New file path
65 | new System.IO.FileInfo(pastaDestino).Directory.Create(); // Create folder retuned by getFolderNameByExtension
66 | File.Move(name, pastaDestino); // move the file to new directory
67 | }
68 |
69 | }
70 |
71 | files = Directory.GetFiles(sSelectedFolder); // Get all files in selected folder
72 | fileCount.Text = files.Length.ToString(); // Number of files
73 | MessageBox.Show("Yaaaay, organized files! xD"); // Popup that everything is done
74 | }
75 |
76 | ///
77 | ///
78 | ///
79 | /// Directory of a file
80 | /// Folder Name by filetype
81 | private string getFolderNameByExtension(string fileName)
82 | {
83 |
84 | //
85 | //
86 | // Function to return folder name for given extension
87 | //
88 | //
89 |
90 | string ext = Path.GetExtension(fileName);
91 | string folderName = "";
92 |
93 | if (ext.Equals(".ext", StringComparison.OrdinalIgnoreCase) || ext.Equals(".pdf", StringComparison.OrdinalIgnoreCase) || ext.Equals(".docx", StringComparison.OrdinalIgnoreCase))
94 | {
95 | folderName = "Text Files";
96 | }
97 | else if (ext.Equals(".exe", StringComparison.OrdinalIgnoreCase) || ext.Equals(".msi", StringComparison.OrdinalIgnoreCase))
98 | {
99 | folderName = "Applications and Games";
100 | }
101 | else if (ext.Equals(".zip", StringComparison.OrdinalIgnoreCase) || ext.Equals(".rar", StringComparison.OrdinalIgnoreCase) || ext.Equals(".7zip", StringComparison.OrdinalIgnoreCase))
102 | {
103 | folderName = "Compressed Files";
104 | }
105 | else if (ext.Equals(".img", StringComparison.OrdinalIgnoreCase) || ext.Equals(".iso", StringComparison.OrdinalIgnoreCase) || ext.Equals(".dmg", StringComparison.OrdinalIgnoreCase))
106 | {
107 | folderName = "Install Media";
108 | }
109 | else if (ext.Equals(".png", StringComparison.OrdinalIgnoreCase) || ext.Equals(".jpg", StringComparison.OrdinalIgnoreCase) || ext.Equals(".jpeg", StringComparison.OrdinalIgnoreCase) || ext.Equals(".gif", StringComparison.OrdinalIgnoreCase))
110 | {
111 | folderName = "Images";
112 | }
113 | else if (ext.Equals(".mp3", StringComparison.OrdinalIgnoreCase) || ext.Equals(".aac", StringComparison.OrdinalIgnoreCase))
114 | {
115 | folderName = "Musics";
116 | }
117 | else if (ext.Equals(".mp4", StringComparison.OrdinalIgnoreCase) || ext.Equals(".flv", StringComparison.OrdinalIgnoreCase) || ext.Equals(".3gp", StringComparison.OrdinalIgnoreCase) || ext.Equals(".avi", StringComparison.OrdinalIgnoreCase))
118 | {
119 | folderName = "Videos";
120 | }
121 | else if (ext.Equals(".html", StringComparison.OrdinalIgnoreCase) || ext.Equals(".css", StringComparison.OrdinalIgnoreCase) || ext.Equals(".php", StringComparison.OrdinalIgnoreCase) || ext.Equals(".url", StringComparison.OrdinalIgnoreCase))
122 | {
123 | folderName = "Web Files";
124 | }
125 | else if (ext.Equals(".lnk", StringComparison.OrdinalIgnoreCase))
126 | {
127 | folderName = "Shortcuts";
128 | }
129 | else if(ext.Equals(".ini", StringComparison.OrdinalIgnoreCase))
130 | {
131 | folderName = "";
132 | }
133 | else
134 | {
135 | folderName = "Other Files";
136 | }
137 |
138 |
139 | return folderName;
140 | }
141 |
142 | public string getPath()
143 | {
144 |
145 | //
146 | //
147 | // Function for selecting folder
148 | //
149 | //
150 |
151 | FolderBrowserDialog fbd = new FolderBrowserDialog();
152 | // fbd.Description = "Custom Description";
153 |
154 | if (fbd.ShowDialog() == DialogResult.OK) // If valid valid folder is returned, return it's path
155 | {
156 | dir = new DirectoryInfo(fbd.SelectedPath);
157 | return fbd.SelectedPath;
158 | }
159 | else // Else return downloads folder path
160 | {
161 | string downloads = "";
162 | string userName = Environment.UserName;
163 | downloads = @"C:\Users\"+ userName +@"\Downloads";
164 | return downloads;
165 | }
166 | }
167 |
168 | private void CurrentFolder_Click(object sender, EventArgs e)
169 | {
170 |
171 | }
172 |
173 | private void Label3_Click(object sender, EventArgs e)
174 | {
175 |
176 | }
177 |
178 | private void FileCount_Click(object sender, EventArgs e)
179 | {
180 |
181 | }
182 | }
183 | }
184 |
--------------------------------------------------------------------------------
/File Organizer/Form1.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/File Organizer/GradientPanel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Drawing;
4 | using System.Drawing.Drawing2D;
5 | using System.Linq;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 | using System.Windows.Forms;
9 | namespace File_Organizer
10 | {
11 | class GradientPanel: Panel
12 | {
13 | public Color ColorTop { get; set; }
14 | public Color ColorBottom { get; set; }
15 | protected override void OnPaint(PaintEventArgs e)
16 | {
17 | LinearGradientBrush lgb = new LinearGradientBrush(this.ClientRectangle, this.ColorTop, this.ColorBottom, 90f);
18 | Graphics g = e.Graphics;
19 | g.FillRectangle(lgb, this.ClientRectangle);
20 | base.OnPaint(e);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/File Organizer/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using System.Windows.Forms;
6 |
7 | namespace File_Organizer
8 | {
9 | static class Program
10 | {
11 | ///
12 | /// Ponto de entrada principal para o aplicativo.
13 | ///
14 | [STAThread]
15 | static void Main()
16 | {
17 | Application.EnableVisualStyles();
18 | Application.SetCompatibleTextRenderingDefault(false);
19 | Application.Run(new Form1());
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/File Organizer/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // As informações gerais sobre um assembly são controladas por
6 | // conjunto de atributos. Altere estes valores de atributo para modificar as informações
7 | // associadas a um assembly.
8 | [assembly: AssemblyTitle("File Organizer")]
9 | [assembly: AssemblyDescription("Organize your files faster with a few clicks.")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Joao Alves")]
12 | [assembly: AssemblyProduct("File Organizer")]
13 | [assembly: AssemblyCopyright("Copyright © 2019")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Definir ComVisible como false torna os tipos neste assembly invisíveis
18 | // para componentes COM. Caso precise acessar um tipo neste assembly de
19 | // COM, defina o atributo ComVisible como true nesse tipo.
20 | [assembly: ComVisible(false)]
21 |
22 | // O GUID a seguir será destinado à ID de typelib se este projeto for exposto para COM
23 | [assembly: Guid("c0b57f33-e27e-44b0-86e8-90251eb91d6e")]
24 |
25 | // As informações da versão de um assembly consistem nos quatro valores a seguir:
26 | //
27 | // Versão Principal
28 | // Versão Secundária
29 | // Número da Versão
30 | // Revisão
31 | //
32 | // É possível especificar todos os valores ou usar como padrão os Números de Build e da Revisão
33 | // usando o "*" como mostrado abaixo:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.1")]
36 | [assembly: AssemblyFileVersion("1.1")]
37 |
--------------------------------------------------------------------------------
/File Organizer/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // Este código foi gerado por uma ferramenta.
4 | // Versão de Tempo de Execução: 4.0.30319.42000
5 | //
6 | // As alterações ao arquivo poderão causar comportamento incorreto e serão perdidas se
7 | // o código for recriado
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace File_Organizer.Properties
12 | {
13 |
14 |
15 | ///
16 | /// Uma classe de recurso fortemente tipados, para pesquisar cadeias de caracteres localizadas etc.
17 | ///
18 | // Esta classe foi gerada automaticamente pela StronglyTypedResourceBuilder
19 | // classe através de uma ferramenta como ResGen ou Visual Studio.
20 | // Para adicionar ou remover um associado, edite o arquivo .ResX e execute ResGen novamente
21 | // com a opção /str ou reconstrua seu projeto VS.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources
26 | {
27 |
28 | private static global::System.Resources.ResourceManager resourceMan;
29 |
30 | private static global::System.Globalization.CultureInfo resourceCulture;
31 |
32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
33 | internal Resources()
34 | {
35 | }
36 |
37 | ///
38 | /// Retorna a instância cacheada de ResourceManager utilizada por esta classe.
39 | ///
40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
41 | internal static global::System.Resources.ResourceManager ResourceManager
42 | {
43 | get
44 | {
45 | if ((resourceMan == null))
46 | {
47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("File_Organizer.Properties.Resources", typeof(Resources).Assembly);
48 | resourceMan = temp;
49 | }
50 | return resourceMan;
51 | }
52 | }
53 |
54 | ///
55 | /// Substitui a propriedade CurrentUICulture do thread atual para todas
56 | /// as pesquisas de recursos que usam esta classe de recursos fortemente tipados.
57 | ///
58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
59 | internal static global::System.Globalization.CultureInfo Culture
60 | {
61 | get
62 | {
63 | return resourceCulture;
64 | }
65 | set
66 | {
67 | resourceCulture = value;
68 | }
69 | }
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/File Organizer/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/File Organizer/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace File_Organizer.Properties
12 | {
13 |
14 |
15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
18 | {
19 |
20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
21 |
22 | public static Settings Default
23 | {
24 | get
25 | {
26 | return defaultInstance;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/File Organizer/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/File Organizer/bin/Debug/File Organizer.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/bin/Debug/File Organizer.exe
--------------------------------------------------------------------------------
/File Organizer/bin/Debug/File Organizer.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/File Organizer/bin/Debug/File Organizer.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/bin/Debug/File Organizer.pdb
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
5 |
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File Organizer.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | ed523f85d7272dc9bdfad7e25f559d41b574287a
2 |
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File Organizer.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\jneto\source\repos\File Organizer\File Organizer\bin\Debug\File Organizer.exe.config
2 | C:\Users\jneto\source\repos\File Organizer\File Organizer\bin\Debug\File Organizer.exe
3 | C:\Users\jneto\source\repos\File Organizer\File Organizer\bin\Debug\File Organizer.pdb
4 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File Organizer.csprojAssemblyReference.cache
5 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File_Organizer.Form1.resources
6 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File_Organizer.Properties.Resources.resources
7 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File Organizer.csproj.GenerateResource.cache
8 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File Organizer.csproj.CoreCompileInputs.cache
9 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File Organizer.exe
10 | C:\Users\jneto\source\repos\File Organizer\File Organizer\obj\Debug\File Organizer.pdb
11 |
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File Organizer.csproj.GenerateResource.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/File Organizer.csproj.GenerateResource.cache
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File Organizer.csprojAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/File Organizer.csprojAssemblyReference.cache
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File Organizer.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/File Organizer.exe
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File Organizer.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/File Organizer.pdb
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File_Organizer.Form1.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/File_Organizer.Form1.resources
--------------------------------------------------------------------------------
/File Organizer/obj/Debug/File_Organizer.Properties.Resources.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/File Organizer/obj/Debug/File_Organizer.Properties.Resources.resources
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 João Alves
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # :file_folder: File Organizer
2 | :rocket: Organize your files faster with a few clicks.
3 |
4 | OS: Windows Only
5 |
6 | ## Contents
7 | - [How to Use?](#-how-to-use)
8 |
9 | ## 📋 How to Use?
10 |
11 | ### Step 1: Choose the folder to organize
12 |
13 | 
14 |
15 | ### Step 2: Open the File Organizer
16 |
17 | 
18 |
19 | ### Step 3: Select your folder (by default is Downloads) and press Organize!
20 |
21 | 
22 |
23 | ### Step 4: Done!
24 |
25 | Now check your folder on Windows Explorer to check
26 |
27 | 
28 |
29 |
--------------------------------------------------------------------------------
/screenshots/app1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/screenshots/app1.PNG
--------------------------------------------------------------------------------
/screenshots/app2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/screenshots/app2.PNG
--------------------------------------------------------------------------------
/screenshots/pasta.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/screenshots/pasta.PNG
--------------------------------------------------------------------------------
/screenshots/pasta2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/b3coded/file-organizer/cd2f745ce0c660bea93b19bc603e3c96673013f2/screenshots/pasta2.PNG
--------------------------------------------------------------------------------