Showing posts with label Data. Show all posts
Showing posts with label Data. Show all posts

Monday, September 21, 2026

What Is an .xlsx File?

// spreadsheets

What Is an .xlsx File?

An .xlsx file is a modern spreadsheet file format used by Microsoft Excel and many other spreadsheet programs. It can store worksheets, numbers, text, formulas, tables, charts, formatting and other structured spreadsheet data.

// definition

.xlsx is a spreadsheet file format

An .xlsx file is a spreadsheet workbook stored using Microsoft's Office Open XML spreadsheet format.

It is commonly associated with Microsoft Excel, although other spreadsheet applications can also read and write .xlsx files.

A single workbook can contain multiple worksheets along with formulas, formatting, charts and other spreadsheet information.

// file extension

What does .xlsx mean?

The .xlsx extension identifies an Excel workbook stored using the Office Open XML format.

budget.xlsx customers.xlsx sales-data.xlsx project-tracker.xlsx

The extension tells software what kind of file it is dealing with and which format should be used to interpret the contents.

// workbook

An .xlsx file is a workbook

A workbook can contain one or more worksheets.

sales.xlsx │ ├── January ├── February ├── March └── Summary

Each worksheet contains a grid of rows and columns.

// cells

Spreadsheet data is stored in cells

Each cell is identified by a column and row.

A1 B1 C1 A2 B2 C2

For example:

A B C
Product Quantity Price
Keyboard 2 39.99
Mouse 4 19.50
// cell values

Cells can contain different kinds of information

Text Numbers Dates Times Formulas Booleans Errors
// formulas

.xlsx files can store formulas

A spreadsheet cell does not have to contain only a fixed value.

It can contain a formula:

=A1+B1

or:

=SUM(B2:B20)

The spreadsheet application evaluates the formula and displays the calculated result.

// formula + value

A formula and its displayed result are different things

Suppose a cell contains:

=10+20

The displayed result may be:

30

The workbook can retain the formula rather than simply replacing it with the number 30.

// formatting

.xlsx files can store presentation information

Unlike a simple CSV file, an .xlsx workbook can retain substantial visual formatting.

Fonts Colours Borders Alignment Number Formats Column Widths Row Heights Conditional Formatting
// workbook features

A workbook can contain much more than cells

Worksheets

Multiple spreadsheet pages can exist inside one file.

Charts

Data can be visualised using charts and graphs.

Tables

Structured Excel tables can organise related records.

Formulas

Calculations can reference other cells and sheets.

Validation

Rules can restrict what users are allowed to enter.

Hyperlinks

Cells can contain links to websites and other resources.

// office open xml

An .xlsx file is based on XML

The modern Excel workbook format belongs to the Office Open XML family of file formats.

Internally, workbook information is divided across a collection of structured XML files and related resources.

Workbook ↓ XML documents + relationships + styles + other resources
// zip container

An .xlsx file is also a ZIP package

One of the most interesting facts about .xlsx files is that they are packaged using ZIP compression.

If a copy of an .xlsx file is renamed from:

workbook.xlsx

to:

workbook.zip

ZIP-compatible software can usually open the package and reveal the internal files.

An .xlsx file is not one giant XML document. It is a ZIP package containing multiple XML documents and supporting files organised according to the Office Open XML format.

// internal structure

What is inside an .xlsx file?

A simplified workbook package might contain:

workbook.xlsx │ ├── [Content_Types].xml ├── _rels/ │ ├── docProps/ │ └── xl/ │ ├── workbook.xml ├── styles.xml ├── sharedStrings.xml ├── worksheets/ │ ├── sheet1.xml │ └── sheet2.xml │ └── _rels/

The exact contents depend on which features are used in the workbook.

// worksheet xml

Worksheets are represented using XML

Internally, a worksheet may contain XML structures representing rows and cells.

<row r="1"> <c r="A1"> ... </c> </row>

Spreadsheet software interprets these structures and presents them as the familiar grid seen in Excel.

// shared strings

Text may be stored separately from worksheet cells

Some .xlsx workbooks use a shared strings table.

Instead of repeating the same text many times inside worksheets, cells can reference entries stored in a shared XML structure.

Cell ↓ String reference ↓ sharedStrings.xml ↓ "Freelance Coder"
// styles

Formatting can be stored separately

Workbook styles can be defined in internal style information and referenced by cells.

This avoids having to repeat complete formatting instructions for every individual cell.

// xlsx vs xls

.xlsx replaced the older .xls format

.xls .xlsx
Older Excel format Modern Excel workbook format
Binary file format Office Open XML package
Associated with older Excel versions Introduced with Excel 2007
Legacy format Common modern format
// xlsx vs csv

.xlsx and .csv are very different

CSV XLSX
Plain-text format ZIP-based spreadsheet package
Usually represents one table Can contain multiple worksheets
No native cell formatting Supports extensive formatting
No native charts Can contain charts
Simple data exchange Complete spreadsheet workbook
// important distinction

Saving Excel data as CSV can remove workbook features

Suppose an .xlsx workbook contains:

3 worksheets formulas colours charts cell formatting

Exporting one sheet to CSV normally preserves the tabular values but not the complete workbook structure.

XLSX → full spreadsheet workbook CSV → plain tabular data
// macros

.xlsx files do not normally contain VBA macros

Excel uses a different extension for macro-enabled workbooks:

.xlsm
Extension Workbook type
.xlsx Standard Excel workbook
.xlsm Macro-enabled Excel workbook

This distinction matters. If a workbook depends on VBA macros, saving it as an ordinary .xlsx file is not the appropriate format for retaining those macros.

// programming

.xlsx files can be created by software

Excel itself is not required to generate every .xlsx workbook.

Programming libraries can create, read and modify spreadsheet files automatically.

Python JavaScript PHP Java C# Automation
// python example

Python can create .xlsx files

For example, libraries such as openpyxl can work with Excel workbooks.

from openpyxl import Workbook workbook = Workbook() sheet = workbook.active sheet["A1"] = "Product" sheet["B1"] = "Price" sheet["A2"] = "Keyboard" sheet["B2"] = 39.99 workbook.save("products.xlsx")

Software can therefore generate spreadsheets from databases, APIs and other data sources.

// automation

Spreadsheet generation can be automated

API ↓ Application ↓ Process data ↓ Generate .xlsx ↓ Spreadsheet report

This is useful for reporting, financial data, exports, project tracking and business workflows.

// compatibility

.xlsx files are supported by many applications

Microsoft Excel is the application most strongly associated with .xlsx, but other spreadsheet software can also work with the format.

Microsoft Excel Google Sheets LibreOffice Calc Spreadsheet Libraries

Complex workbook features may not always behave identically when the same file is opened in different spreadsheet applications.

// not plain text

An .xlsx file is not a plain-text file

Although its internal structure contains XML documents, the .xlsx file itself is a compressed package.

Opening it directly in a basic text editor will therefore not display the workbook in the same clean way as opening a CSV, TXT or XML file.

TXT → plain text CSV → plain text XML → plain text XLSX → compressed package containing XML and other resources
// uses

What are .xlsx files used for?

Budgets Accounts Data Analysis Reports Project Tracking Invoices Customer Lists Dashboards Financial Models Data Exports
// mental model

The simplest way to think about .xlsx

.xlsx file ↓ ZIP package ↓ XML + relationships + resources ↓ Workbook ↓ Worksheets ↓ Rows + columns + cells ↓ Values + formulas + formatting
// summary

More than just a table.

An .xlsx file is a modern spreadsheet workbook format based on Office Open XML. It can contain multiple worksheets, values, formulas, formatting, charts and other spreadsheet features. Internally, the workbook is stored as a ZIP package containing XML documents and related resources.

Friday, September 18, 2026

What Is UTF-8?

// character encoding

What Is UTF-8?

UTF-8 is a character encoding used to represent text inside computers. It provides a way of turning Unicode characters such as letters, numbers, mathematical symbols and characters from many languages into bytes that a computer can store and process.

// definition

UTF-8 turns characters into bytes

UTF-8 stands for Unicode Transformation Format - 8-bit.

It is an encoding system that converts Unicode characters into sequences of bytes.

This allows text to be stored in files, transmitted across networks and interpreted consistently by different computer systems.

// why encoding?

Computers do not store letters directly

When we look at a computer screen, we see characters:

A £ π é 日 😀

But computer storage ultimately consists of binary data. The computer therefore needs a defined system for representing each character using numbers and bytes.

Character → Unicode code point → UTF-8 encoding → Bytes
// unicode

First, understand Unicode

Unicode is a standard that assigns characters unique numerical identifiers called code points.

A Unicode code point is normally written using U+ followed by hexadecimal digits.

Character Unicode code point
A U+0041
£ U+00A3
é U+00E9
π U+03C0
€ U+20AC
😀 U+1F600
// unicode vs utf-8

Unicode and UTF-8 are not the same thing

This distinction is important.

Unicode

Defines characters and assigns them code points.

UTF-8

Defines how those Unicode code points are encoded into bytes.

Unicode tells us that the pound sign is U+00A3. UTF-8 tells the computer which bytes should be used to represent that character.

// bytes

UTF-8 uses between one and four bytes

UTF-8 is a variable-length encoding.

Different characters require different numbers of bytes.

Character UTF-8 bytes Bytes used
A 41 1
£ C2 A3 2
π CF 80 2
€ E2 82 AC 3
😀 F0 9F 98 80 4

Important: the hexadecimal byte values shown above are the UTF-8 encoding of each character, not the Unicode code point itself.

// ascii compatibility

UTF-8 is compatible with ASCII

One of the reasons UTF-8 became so successful is its compatibility with ASCII.

The first 128 Unicode characters use exactly the same single-byte values as ASCII.

A = U+0041 = UTF-8 byte 41 B = U+0042 = UTF-8 byte 42 1 = U+0031 = UTF-8 byte 31

This means ordinary English text using basic letters, digits and punctuation is very compact in UTF-8.

// multilingual text

UTF-8 can represent text from many languages

UTF-8 is not limited to English.

English: Hello Português: Olá Español: Información Français: Éducation Greek: π Japanese: 日本 Currency: £ € ¥ Mathematics: ≤ ≥ ± √ ∞ Emoji: 😀

All of these characters can exist within the same UTF-8 encoded document.

// encoding errors

What happens when the wrong encoding is used?

Text can become corrupted-looking when software interprets bytes using the wrong character encoding.

For example, a pound sign encoded as UTF-8 may sometimes incorrectly appear as:

Expected: £50 Incorrect interpretation: £50

This type of garbled text is often called mojibake.

The data may not actually be damaged. The same bytes may simply have been interpreted using the wrong encoding.

// txt files

UTF-8 and .txt files

A .txt file tells us that a file contains plain text, but it does not automatically tell us which character encoding was used.

.txt ≠ automatically UTF-8

A text file might use UTF-8, ASCII, Windows-1252 or another encoding.

For modern text files, UTF-8 is generally the most useful and interoperable choice.

// csv files

UTF-8 and CSV

CSV is also a text-based format, so character encoding matters.

Name,City,Amount João,Lisboa,£50 Élodie,Paris,€75 Sofia,Athens,€40

Saving this file using UTF-8 helps preserve accented characters and currency symbols when the file moves between compatible systems.

// xml

UTF-8 and XML

XML documents can explicitly declare their character encoding.

<?xml version="1.0" encoding="UTF-8"?>

This tells the software reading the document that its characters are encoded using UTF-8.

// html

UTF-8 on websites

Websites also need to specify how text should be interpreted.

Modern HTML pages commonly include:

<meta charset="UTF-8">

This tells the browser to interpret the document using UTF-8.

Correct encoding is important for displaying names, symbols, mathematical notation, international text and other characters reliably.

// advantages

Why is UTF-8 so widely used?

Unicode support

It can represent the full range of Unicode code points.

ASCII compatible

Basic ASCII characters retain their original one-byte representation.

Efficient

Common English characters require only one byte, while additional bytes are used when necessary.

Portable

UTF-8 is supported across operating systems, programming languages, databases and web technology.

// where it appears

UTF-8 appears throughout modern computing

UTF-8 can be used with many text-based technologies and file formats.

TXT CSV XML JSON HTML CSS JavaScript APIs Databases Web Pages
// key idea

The file format and the encoding are different things

This is one of the most useful concepts to understand.

File format: describes how information is organised.

Character encoding: describes how the characters themselves are represented as bytes.

CSV = structure of the data UTF-8 = encoding of the characters

A CSV file can therefore be encoded using UTF-8. An XML document can be encoded using UTF-8. A plain .txt file can also be encoded using UTF-8.

// summary

Characters become bytes.

UTF-8 is a character encoding that converts Unicode characters into sequences of one to four bytes. It allows computers to store and exchange text from many languages, symbols and writing systems while remaining compatible with ASCII.

What Is a .csv File?

// file formats

What Is a .csv File?

A .csv file is a simple way of storing tabular data as plain text. It is commonly used to move information between spreadsheets, databases, websites and software applications.

// definition

CSV means Comma-Separated Values

CSV stands for Comma-Separated Values.

A .csv file stores data as plain text, usually with each line representing a row and commas separating the individual values within that row.

This makes CSV particularly useful for information that naturally fits into rows and columns.

// example

What does CSV data look like?

Imagine a spreadsheet containing customer information:

Name,Email,Orders Alice,alice@example.com,4 Ben,ben@example.com,7 Carla,carla@example.com,2

The first line contains the column headings. Each line after that represents one record.

Name Email Orders
Alice alice@example.com 4
Ben ben@example.com 7
Carla carla@example.com 2

The CSV file and the table contain essentially the same information. The difference is how that information is represented.

// structure

Rows, columns and values

Rows

Each line normally represents one record, such as one customer, one product or one transaction.

Columns

Each position within a row represents a particular field, such as a name, price or date.

Delimiter

Commas normally separate the fields from one another, giving the format its name.

Header row

Many CSV files begin with a row containing the names of the columns, although this is not compulsory.

// plain text

A CSV file is still a text file

CSV is a structured text format.

If you open a CSV file in a plain-text editor, you can normally read its contents directly.

However, spreadsheet software such as Microsoft Excel or Google Sheets can interpret the separators and display the information as rows and columns.

Plain Text Rows Columns Records Fields
// quoted values

What happens if the data itself contains a comma?

Sometimes a value needs to contain a comma of its own. In that situation, the value can be enclosed in double quotation marks.

Name,Location Alice,"Birmingham, England" Ben,"London, England"

The quotation marks tell software that the comma inside the location belongs to the value rather than separating two different columns.

// escaping

What about quotation marks inside a value?

If a quoted field itself contains a double quotation mark, CSV commonly represents it by doubling the quotation mark.

Product,Description Book,"The ""Advanced"" Edition"

This allows the quotation mark to remain part of the actual data.

// csv vs spreadsheet

A CSV file is not an Excel workbook

Excel can open CSV files, but that does not make CSV an Excel format.

A normal Excel workbook can store much more than simple tabular values. It can contain formatting, formulas, multiple worksheets, charts and other spreadsheet features.

Feature CSV Excel workbook
Rows and columns Yes Yes
Plain text Yes No
Multiple worksheets No Yes
Cell formatting No Yes
Charts No Yes

Important: when an Excel workbook is exported to CSV, features such as colours, fonts, charts and multiple worksheets are not preserved as part of the CSV format.

// why csv?

Why is CSV so widely used?

Simple

CSV has a straightforward structure that is relatively easy for both people and software to understand.

Portable

CSV files can move data between many different applications and operating systems.

Lightweight

There is very little additional information surrounding the actual data.

Programmable

Programming languages and data tools can easily read, create and transform CSV files.

// uses

What are CSV files used for?

CSV files are common anywhere structured data needs to move from one system to another.

Customer Data Product Lists Transactions Website Data Analytics Database Exports Affiliate Data Inventory Spreadsheets Data Migration
// encoding

CSV and UTF-8

Like other text files, a CSV file must use a character encoding.

UTF-8 is a particularly useful choice because it supports a huge range of characters and languages.

Name,City,Amount João,Lisboa,£25 Élodie,Paris,€40 Sofia,Athens,€32

Important: the .csv extension does not itself guarantee UTF-8. The character encoding is a separate property of the file.

// delimiters

Is a comma always used?

CSV literally means Comma-Separated Values, and commas are the standard delimiter associated with the format.

In practice, however, data files may also use other separators. For example, semicolons are sometimes used because of regional settings or software conventions.

Name;City;Orders Alice;Birmingham;4 Ben;London;7

Files using tabs as separators are commonly called TSV, meaning Tab-Separated Values.

// data management

Why CSV matters in data management

CSV is particularly useful because it provides a simple bridge between different systems.

A database can export records to CSV. A spreadsheet can open them. A script can transform them. Another application can then import the resulting file.

Database ↓ CSV ↓ Spreadsheet ↓ Script / Automation ↓ Another System

This makes CSV extremely useful for data migration, cleaning, imports, exports and automation.

// txt vs csv

How is CSV different from TXT?

Both .txt and .csv files can contain plain text.

The key difference is that CSV normally follows a tabular structure: values are separated into fields and records so that software can interpret them as rows and columns.

A general .txt file does not necessarily have that structure.

Format Main purpose
.txt General plain-text information
.csv Structured tabular data
// summary

Simple text. Structured data.

A .csv file stores tabular information as plain text, normally using commas to separate values and new lines to separate records. Its simplicity makes CSV one of the most useful formats for exchanging data between spreadsheets, databases, websites and software systems.

What Is a .txt File?

// file formats

What Is a .txt File?

A .txt file is one of the simplest ways of storing information on a computer. It contains plain text without the complex formatting found in documents, spreadsheets or web pages.

// definition

Plain text, stored in a file

A .txt file is a plain-text file. The letters .txt are the file extension, which tells a computer that the file primarily contains text.

Unlike a Microsoft Word document, a .txt file does not normally contain information about fonts, colours, page layouts, images or complex formatting.

It is essentially a sequence of characters stored in a file.

// example

What does a .txt file contain?

A text file might contain something as simple as:

> Customer: Jane Smith Order Number: 10452 Product: Laptop Stand Quantity: 2 Status: Dispatched

There is no special document structure required here. These are simply characters and line breaks stored inside a file.

// why use txt?

Simple files can be extremely useful

Lightweight

Text files usually require very little storage because they contain little more than the characters themselves.

Widely supported

Almost every operating system and programming language can read and write plain-text files.

Easy to inspect

A person can open a .txt file directly and see the information without needing specialist software.

Easy to process

Programs and scripts can search, transform and analyse text files very efficiently.

// data

A .txt file can contain many kinds of information

The .txt extension does not dictate exactly what the text must represent.

A text file could contain notes, lists, configuration information, source data, logs, mathematical expressions, website content or information intended to be processed by another program.

Notes Lists Logs Data Code Configuration URLs Mathematics
// encoding

What does UTF-8 have to do with .txt files?

Computers ultimately store information as numbers. A text encoding defines how those numbers correspond to characters such as letters, numbers and symbols.

UTF-8 is one of the most widely used character encodings. It can represent ordinary English text as well as characters from a huge range of languages and writing systems.

> English Português Mathematics: π ≈ 3.14159 Currency: £50 Symbols: ≤ ≥ ± √

Important: a file ending in .txt is not automatically guaranteed to use UTF-8. Text files can use different character encodings.

When exchanging modern text data, UTF-8 is usually an excellent choice because it supports such a wide range of characters.

// txt vs document

A text file is not the same as a formatted document

Suppose you write:

Hello, world!

A .txt file mainly stores those characters.

A word-processing document may also store information describing the font, font size, colour, margins, paragraph spacing, images and many other formatting properties.

This is why plain-text files are often much simpler to process programmatically.

// related formats

Many important file formats are text-based

Plain text is also the foundation of many structured formats used throughout computing and the web.

.txt .csv .json .xml .html .css .js

These formats add their own rules and structures, but the underlying content can still be represented as text.

This is one reason understanding plain text is so useful when working with data, websites, APIs and automation.

// practical use

When is a .txt file useful?

Saving simple information

Notes, instructions, lists or other information that does not require visual formatting.

Moving data

Text can be transferred between different applications and computer systems with relatively little complexity.

Programming

Scripts can create, read, search and modify text files easily.

Automation

Text files can act as simple inputs, outputs, logs or intermediate data in automated processes.

// summary

Simple format. Huge usefulness.

A .txt file is simply a file containing plain text. Its simplicity makes it one of the most universal, portable and useful ways of storing information on a computer.

What Is an IP Address?

// networking What Is an IP Address? An IP address is a numerical address used t...