# easyCSV - Import text CSV at runtime

**URL:** <https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049>\
**Category:** UE Marketplace\
**Tags:** unreal-engine, fab\
**Created:** [October 12, 2020, 5:31pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049 "2020-10-12T17:31:33Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [October 12, 2020, 5:31pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/1 "2020-10-12T17:31:33Z")

</div>

\*\*A runtime solution for parsing CSV files into string arrays for easy access!

Marketplace link: \*\*[easyCSV in Code Plugins - UE Marketplace](https://www.unrealengine.com/marketplace/en-US/product/b25b855096e74d088d7553ccbe4072f2)

**Price: $4.99**

Games and applications are data-rich and sometimes you want to drive or edit this data from outside of the engine - _this is where spreadsheets really shine_. You can store information about objects, characters, or even create save data using simple plain text then bring it into the engine through an external file.

If you have used Data Tables in the engine in the past, you know that you can import/export that data using CSV among other formats but this is only available when not in-game. With easyCSV you can get data in a string format at any time and use Blueprint or C++ “from string” methods to convert data from string. If you want to convert a CSV to your game’s data types automatically at runtime (or download it from a public Google Sheet) or export a local CSV from your game’s data, please see [Runtime DataTable](https://www.unrealengine.com/marketplace/en-US/product/runtime-datatable).

Features:

- Runtime parsing of CSV text files in blueprints or C++
- Conversion library for strings representing quaternions
- Support for arrays, maps, sets, and nested structs

Code Modules:

- easyCSV: A runtime module that handles parsing,

Number of Blueprints nodes: 21  
C++ Classes: 2  
Network Replicated: No  
Supported Development Platforms: Win64, Mac  
Supported Target Build Platforms: Win32, Win64, Android, Mac, iOS, tvOS  
**iOS/Mac/tvOS support not tested by me**

**Documentation** ]([easyCSV Documentation - Google Docs](https://docs.google.com/document/d/1_2ABIKxu04fYgS5yGBKtx-oxHdALKfPcF_vYtjBS8X0/edit?usp=sharing))  
**Project Files** ]([easyCSV\_ProjectFiles\_4\_25.zip - Google Drive](https://drive.google.com/file/d/1hIO1PvnPM7xZ1dRNaIP7OKDw_TJ4gCvy/view?usp=sharing))\*\*: \*\*Includes a TestStruct.csv (CSV\_Test\Saved) that can be edited with the results showing in the output log when ‘Execute It’ is clicked. Requires plugin.

\*\*Q&A:

There already are CSV solutions on the marketplace. What does your plugin do differently?\*\*

Functionally, it’s about the same. The implementation is its own, but for the most part a CSV parser is a CSV parser 🙂 easyCSV organizes your data into a TMap and comes with a long list of helper nodes to assist you in getting exactly the data you need. It even supports arrays, maps, sets, nested structs and localized text objects represented as a string.

**How does this differ from [Runtime DataTable](https://www.unrealengine.com/marketplace/en-US/product/runtime-datatable)?**

easyCSV is intended as a lower-cost alternative to Runtime DataTable. It only parses the CSV into a map and offers the user ways to quickly access that data in string form. It’s up to the user to know what to convert to which data type and when. easyCSV is for developers who will only be dealing in strings or don’t mind writing their own functions to convert CSV strings into data types.

RDT will parse data in the same way but will automatically convert the data to the correct type for the specified variables on a specified object. It also will download CSV files directly from public Google Sheets and export struct data into a local CSV file.

\*\*easyCSV is included IN FULL with Runtime DataTable. \*\*

This plugin is now approved and on the marketplace!

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [December 4, 2020, 4:33am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/2 "2020-12-04T04:33:13Z")

</div>

Update for 4.26 has been uploaded to Marketplace, now we wait on Epic response!

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [August 22, 2021, 6:53pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/3 "2021-08-22T18:53:27Z")

</div>

4.27 version of easyCSV has just been submitted, should only be a couple days before it goes live.

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [August 26, 2021, 8:28pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/4 "2021-08-26T20:28:37Z")

</div>

4.27 is now live!

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [October 17, 2022, 12:38am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/5 "2022-10-17T00:38:12Z")

</div>

New versions 5.0.3.1 and 4.27.3.1 submitted for approval!

10-16-2022 (5.0.3.1, 4.27.3.1): Updated module names, added Linux support

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [October 29, 2022, 4:32am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/6 "2022-10-29T04:32:27Z")

</div>

New update submitted for approval!

10-28-2022 (5.0.3.2, 4.27.2.2): Remove deprecated functions from EasyCsv module

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [June 20, 2023, 8:35pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/7 "2023-06-20T20:35:14Z")

</div>

5.2 version now finally live!

---

<div class="post-metadata">

**Author:** ![Peter\_Parkour99](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Peter\_Parkour99](https://forums.unrealengine.com/u/Peter_Parkour99)\
**Post date:** [July 5, 2023, 4:10am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/8 "2023-07-05T04:10:20Z")

</div>

Hi, can the plugin read a csv file that is being written at the same time?  
Also, does it work for UE 5.1 version?

Thank you.

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [July 17, 2023, 5:06pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/9 "2023-07-17T17:06:15Z")

</div>

Hi Peter\_Parkour99, I love that name by the way.

I apologize for missing this question, I didn’t receive a notification for it ☹

It can access a file that is being written to at the same time as it is designed, but some users have reported difficulties here. It all depends on what the other program that’s writing to the file does. If it locks the file, we can’t really get around that with in-engine tools. If it simply opens and writes to the file stream, easyCSV is able to read it.

The plugin is compatible with 5.1! Support covers 4.25 - 4.27 and 5.0 - 5.2.

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [April 6, 2024, 4:18am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/10 "2024-04-06T04:18:43Z")

</div>

New version submitted! Pending marketplace approval.

4-5-2024 (5.3.1. 5.2.1, 5.1.2): Fix for ParseKeys removing the first header column when set to false

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [May 12, 2024, 7:46pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/11 "2024-05-12T19:46:04Z")

</div>

Epic informed me that the easyCSV version for 5.4 is now live!

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [November 23, 2024, 12:23am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/12 "2024-11-23T00:23:24Z")

</div>

For users looking for a 5.5 version of easyCSV, it was approved over a week ago but has not appeared in the launcher yet for some reason. I have contacted Epic about this. If you need a 5.5 version right now, please contact me and I’ll send the source over, but you will need to build binaries on your own.

I will update this when Epic resolves the issue.

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [November 25, 2024, 7:05pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/13 "2024-11-25T19:05:10Z")

</div>

This situation should now be resolved! Thank you everyone for your patience! easyCSV

---

<div class="post-metadata">

**Author:** ![eibo.zhang](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@eibo.zhang](https://forums.unrealengine.com/u/eibo.zhang)\
**Post date:** [April 9, 2025, 1:18pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/14 "2025-04-09T13:18:15Z")

</div>

Coding can only support ASCII.

---

<div class="post-metadata">

**Author:** ![FUTURLINER](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@FUTURLINER](https://forums.unrealengine.com/u/FUTURLINER)\
**Post date:** [April 22, 2025, 5:39pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/15 "2025-04-22T17:39:56Z")

</div>

I recently bought your plugin, but in the “make csv info from strin” node the option to set the delimiter and wrapper is absent, I would need to specify the value. Do you have a solution?  
Tanks

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [April 26, 2025, 4:33am UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/16 "2025-04-26T04:33:24Z")

</div>

Hi [FUTURLINER](https://dev.epicgames.com/community/api/user_profiles/tab-redirect/about?discourse_username=FUTURLINER),

I regret to inform you that there is no solution for this. As of 4.27, I had to remove the delimiter and wrapper customizations for various reasons, but I only now see that I left those references in the documentation. I do apologize for that. If you need to initiate a refund with Epic, I understand and will grant it without contest.

Best of luck,  
-Jared

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [June 29, 2025, 7:33pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/17 "2025-06-29T19:33:00Z")

</div>

New version for 5.4, 5.5, 5.6 available now!

-Update EasyCsv module name and deprecation messages

---

<div class="post-metadata">

**Author:** ![JaredTherriault](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jaredtherriault/32/1194499_2.png) [@JaredTherriault](https://forums.unrealengine.com/u/JaredTherriault)\
**Post date:** [November 14, 2025, 8:13pm UTC](https://forums.unrealengine.com/t/easycsv-import-text-csv-at-runtime/152049/18 "2025-11-14T20:13:53Z")

</div>

5.7 version of EasyCSV has been uploaded - waiting on approval!
