How to import a CSV file
To import events from a CSV file into your current timeline, perform the following steps:
- Ensure your CSV file meets the rules listed for valid CSV files below. In particular, ensure the file uses UTF8 encoding.
- Select Import -> CSV… from the File menu (on Windows) or Import from the File menu (on Mac)
- Choose the CSV file you wish to import.
- In the Import CSV dialog (shown above)
- Select whether your file is using Comma or Tab as the delimiter for columns within a row.
- Select whether your file is using Comma, Pipe (|) or Either as the internal delimiter for fields with multiple values.
- Specify whether the first row in the CSV file contains column headers, or whether the data to import begins in the very first row.
Note, it is generally recommended to use a CSV file with a row of column names at the top, as it will make the next step much easier.
Specify how to handle each column
The next import screen lets you specify what you want to do with each column of data in the CSV file.
A separate dropdown will be shown for each column of data, allowing you to choose the timeline field that the column should be matched with. When importing, you are able to specify columns to use for the event title, dates and duration, color, tags, links, and any properties and roles specified in your chosen template.
If your CSV file contains a header row (as per previous import screen), each dropdown will be labeled with the column name, making it easier to match up each column with the intended result. Otherwise, the columns will be labelled as “Column A”, “Column B”, etc.
No two columns can be paired with the same field in the timeline (i.e. selections in the dropdowns must be unique). Title and Start Date are the only mandatory fields that you must select somewhere.
Note that Aeon Timeline 2 will
always create new event IDs for imported events.If you CSV file contains a column for event IDs, you should generally set this field to Ignore. Ids in csv files are only used to specify a parent/child relationship between events. (See more about this below)
Once you are happy with your selections, click
Import to add the events into your timeline file. Depending on the size of your CSV file, this may take several seconds to complete.
Rules for CSV files
In order to import data from a CSV file, the file must conform to the following rules:
- Your file must use a csv or txt extension.
- Files should be in ASCII or UTF-8 file format. Other Unicode formats and UTF-16 may not import correctly and should be converted to UTF-8.
- One record is entered per line. There must be no newline characters within a record.
- The fields within each record must be delimited with either commas (,) or tabs.
- Each record should contain the same number of fields/delimiters. It is acceptable to leave some fields empty, but their delimiters must remain intact.
- Any field values that include delimiters (ie. comma or tab, depending on what is used) must be included in straight double quotes ("). Optionally, all fields can be enclosed in these quotes
- If you are using the comma as both an external and internal delimiter, all columns containing internal delimiters must be enclosed in straight double quotes (").
- Curly quotes must not be used when surrounding values.
- Any double quotes within field values must be escaped by placing a second double quote next to the first. For example, the text She said "It's me!" would need to be written as "She said ""It's me!"""
Unfortunately, there is no single standard that defines how a CSV file should be created. We have tried to adopt the most universal standard available, but you may need to massage data from some applications in a text editor before importing.
Converting to UTF-8 format
If your timeline file is not already in UTF-8 format, you will need to convert it to UTF-8 format before you can import it.
Mac OS X
On Mac, you should be able to open your csv file with TextEdit and convert it as follows:
- Hold down the Alt key and click on the File menu.
- Choose Save As…
- In the save dialog, change the Plain Text Encoding dropdown, choose Unicode (UTF-8).
On Windows, many tools are available to convert to UTF-8 format. You can download a text editor such as
and open the file.
Using Notepad++, you can do the following:
- Open the file in Notepad++.
- Click on the Encoding menu, and choose your current file encoding by choosing Encode in XXX.
- Open the Encoding menu again, and choose Convert to UTF-8.
- Save the file (you can use Save As and change the file name if you wish).
Some columns, such as columns representing a “Role”, may allow multiple values for a single record… e.g. an event may have more than one Person in the role of Witness.
In such instances, each value inside your CSV file should be delimited using a pipe character (|) or comma (,). This is known as the internal delimiter, and you can specify which one your csv file is using upon import.
Importing Nested Events
To import events with a parent/child relationship, your csv file needs to contain a column which contains a unique id for each event. It also should contain a separate column that contains the unique id of the event's parent.
When you are specifying how to handle each column, you choose these columns for "Unique ID" and "Parent" respectively, which will import the parent/child relationship between the two events.
Exporting CSV files
Aeon Timeline can export timeline data to a CSV file as well as read it. This can be a useful way to share timeline data with other applications.
To export to a CSV file, choosing Export To -> CSV from the File menu, and choose where to save the exported file.
The exported file will follow the CSV rules defined above, and use UTF8 encoding.
Importing Aeon Timeline Files
Due to the flat nature of the CSV file format, some data is lost when exporting a timeline to a CSV file and then importing it again elsewhere.
If you are looking to open a version 1 timeline file in version 2, it is better to open that file directly rather than export its contents and import it into a new timeline.
We will look to include a specific “merge timelines” function in a future release to make it easier to combine multiple timelines into one, but for the moment, the inexact science of CSV export/import, or direct copy and paste are the best available options.