Convert XLSX to Properties
Max file size 100mb.
XLSX vs Properties Format Comparison
| Aspect | XLSX (Source Format) | Properties (Target Format) |
|---|---|---|
| Format Overview |
XLSX
Microsoft Excel Spreadsheet
XLSX is the default Microsoft Excel format since 2007. Based on the Office Open XML (OOXML) standard (ISO/IEC 29500), it stores spreadsheet data in ZIP-compressed XML files. Supports multiple worksheets, formulas, charts, pivot tables, conditional formatting, and rich cell styling. Spreadsheet Office Open XML |
Properties
Java Properties File
Java Properties is a simple text-based key=value configuration format used extensively in the Java ecosystem. Each line contains a single property as key=value or key:value. Properties files support comments (# or !), Unicode escaping, and line continuation with backslash. They are the standard configuration format for Java applications, Spring Boot, and Android resources. Configuration Java Ecosystem |
| Technical Specifications |
Structure: ZIP/XML (Office Open XML)
Encoding: UTF-8 XML inside ZIP container Standard: ISO/IEC 29500 (OOXML) Max Size: 1,048,576 rows x 16,384 columns Extension: .xlsx |
Structure: Line-oriented key=value pairs
Encoding: ISO 8859-1 (Latin-1) or UTF-8 Comments: Lines starting with # or ! Separators: = or : between key and value Extensions: .properties |
| Syntax Examples |
XLSX stores data in structured worksheets: | Key | Value | |------------------|----------------| | db.host | localhost | | db.port | 5432 | | db.name | myapp | | app.debug | false | |
Properties uses key=value pairs: # Database Configuration db.host=localhost db.port=5432 db.name=myapp # Application Settings app.debug=false |
| Content Support |
|
|
| Advantages |
|
|
| Disadvantages |
|
|
| Common Uses |
|
|
| Best For |
|
|
| Version History |
Introduced: 2007 (Office 2007)
Standard: ISO/IEC 29500 (2008) Status: Active, industry standard MIME Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
Introduced: 1995 (Java 1.0)
API: java.util.Properties (since JDK 1.0) Status: Stable, core Java standard MIME Type: text/x-java-properties |
| Software Support |
Microsoft Excel: Full native support
Google Sheets: Full import/export LibreOffice Calc: Full support Other: Python (openpyxl), Java (Apache POI), R |
Java: java.util.Properties (built-in)
Spring Boot: Auto-loaded application.properties IDEs: IntelliJ IDEA, Eclipse, VS Code Other: Python (jproperties), Node.js (properties-reader) |
Why Convert XLSX to Properties?
Converting XLSX Excel files to Java Properties format transforms spreadsheet data into configuration files that can be directly consumed by Java applications, Spring Boot services, and Android apps. This is particularly valuable when you manage application configurations, environment settings, or internationalization translations in Excel and need to deploy them as standard .properties files.
Our converter reads the Excel workbook, extracts data from the active worksheet, and generates properly formatted key=value pairs. The first column is typically used as the property key, and the second column as the value. Dotted key notation (e.g., db.host, db.port) is preserved, making the output immediately compatible with Spring Boot's hierarchical property binding.
This conversion is especially useful for DevOps teams who maintain configuration data in Excel spreadsheets for easy editing and review. Instead of manually typing property files, you can maintain all settings in a single Excel workbook, review changes with stakeholders, and then convert to .properties format for deployment.
The Properties format is one of the most fundamental configuration formats in the Java ecosystem. It is natively supported by java.util.Properties, automatically loaded by Spring Boot, used for Android string resources, and supported by build tools like Gradle and Maven. XLSX to Properties conversion bridges the gap between business-friendly spreadsheets and developer-friendly configuration files.
Key Benefits of Converting XLSX to Properties:
- Java Native: Output is directly loadable by java.util.Properties API
- Spring Boot Ready: Compatible with Spring Boot application.properties format
- Dotted Keys: Hierarchical namespacing (db.host, db.port) is preserved
- i18n Support: Generate message bundles from translation spreadsheets
- Formula Results: Excel calculations export as their computed values
- Comments: Section headers can be included as # comments
- Version Control: Plain text properties files work perfectly with Git
Practical Examples
Example 1: Spring Boot Application Config
Input XLSX file (app_config.xlsx):
| Key | Value | |------------------------------|--------------------| | server.port | 8080 | | spring.datasource.url | jdbc:postgresql://localhost/mydb | | spring.datasource.username | dbuser | | spring.datasource.password | secret123 | | app.feature.dark-mode | true |
Output Properties file (application.properties):
# Application Configuration server.port=8080 spring.datasource.url=jdbc:postgresql://localhost/mydb spring.datasource.username=dbuser spring.datasource.password=secret123 app.feature.dark-mode=true
Example 2: Internationalization Messages
Input XLSX file (messages.xlsx):
| Key | Value | |--------------------|--------------------------| | greeting.hello | Hello, welcome! | | greeting.goodbye | Goodbye, see you soon! | | error.not_found | Page not found | | error.server | Internal server error | | button.submit | Submit |
Output Properties file (messages.properties):
# Internationalization Messages greeting.hello=Hello, welcome! greeting.goodbye=Goodbye, see you soon! error.not_found=Page not found error.server=Internal server error button.submit=Submit
Example 3: Build Configuration
Input XLSX file (gradle_config.xlsx):
| Key | Value | |---------------------------|-----------| | org.gradle.jvmargs | -Xmx2g | | org.gradle.parallel | true | | org.gradle.caching | true | | android.useAndroidX | true | | kotlin.code.style | official |
Output Properties file (gradle.properties):
# Build Configuration org.gradle.jvmargs=-Xmx2g org.gradle.parallel=true org.gradle.caching=true android.useAndroidX=true kotlin.code.style=official
Frequently Asked Questions (FAQ)
Q: What is a Properties file?
A: A Properties file is a simple text-based configuration format used primarily in the Java ecosystem. Each line contains a key=value pair (or key:value). Lines starting with # or ! are comments. The format was introduced with Java 1.0 in 1995 and is read using java.util.Properties. It is the standard configuration format for Spring Boot (application.properties), Android resources, Gradle/Maven build settings, and i18n message bundles.
Q: How are Excel columns mapped to properties?
A: The converter uses the first column as property keys and the second column as values. If your spreadsheet has more than two columns, the first column becomes the key and all remaining columns can be combined or the second column is used as the value. Dotted key notation (e.g., spring.datasource.url) is preserved exactly as written in the Excel cell.
Q: Can I use the output with Spring Boot?
A: Yes! The generated file is a standard .properties format that Spring Boot loads automatically when named application.properties and placed in the classpath. All Spring Boot configuration properties, including server.port, spring.datasource.*, and custom properties, are supported.
Q: Are Excel formulas preserved?
A: Excel formulas are evaluated and their computed results are exported as property values. The Properties format does not support calculations, so only the final string values are included. All property values are treated as strings in Java.
Q: What happens with special characters?
A: Special characters in property values are handled automatically. Characters like =, :, and # within values are properly escaped. Non-ASCII characters can be represented using Unicode escape sequences (\uXXXX) for compatibility with the traditional ISO 8859-1 encoding of Properties files.
Q: What encoding is used?
A: The output uses UTF-8 encoding. While the traditional Java Properties specification uses ISO 8859-1, modern Java versions (9+) support Properties.load(Reader) with UTF-8. Spring Boot also handles UTF-8 properties files correctly. Non-ASCII characters are preserved in their UTF-8 form.
Q: Can I generate i18n message bundles from translations?
A: Yes! If your Excel spreadsheet contains translation keys in one column and translated messages in another, the converter produces a .properties file suitable for use as a Java ResourceBundle. You can create separate properties files for each locale (messages_en.properties, messages_fr.properties) by converting different columns.
Q: What happens with multiple worksheets?
A: By default, the converter processes the first (active) worksheet. Each row from that sheet becomes a key=value pair in the Properties file. If you need to convert a different sheet, ensure it is set as the active sheet before uploading.