A Python-based desktop application built with PySide6 for combining text files from a selected folder into a single output file.
This is a simple tool designed to contribute to making tasks easier for the hardware area in my current job.
- Simple and user-friendly interface.
- Select a folder containing input text files.
- Choose the name and location of the output file.
- Combine all text files in the selected folder into the output file.
- Error handling for empty folders or invalid file paths.
- Python 3.8 or higher installed on your system.
- Recommended: A virtual environment for isolating dependencies.
- Clone this repository:
git clone https://github.com/your-username/file-combiner.git cd file-combiner - Create and activate a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Run the application:
python app.py
-
Launch the application:
- Double-click the
.exefile if you have packaged the app (instructions below). - Alternatively, run
python app.pyto start the app in your development environment.
- Double-click the
-
Select the input folder:
- Click on "Elija carpeta entrada" to choose the folder containing the text files to combine.
-
Select the output file:
- Click on "Elija nombre y extension archivo salida" to specify the name and location of the combined file.
-
Combine the files:
- Click on "Combinar archivos" to merge the contents of all text files in the folder into the specified output file.
To distribute the application without requiring Python:
- Install PyInstaller:
pip install pyinstaller
- Package the application:
pyinstaller --onefile --windowed --icon=assets/combine.ico app.py
- Find the packaged
.exefile in thedist/directory.
file-combiner/
├── app.py # Entry point for the application
├── combine.py # Functionality for combining text files
├── main_window.py # MainWindow class definition
├── ui_components.py # Helper functions for UI
├── requirements.txt # Project dependencies
├── assets/ # Folder for assets (e.g., icons, screenshots)
│ ├── combine.ico # Application icon
│ └── screenshot_main_window.png # Screenshot for the README
