Creating a variable with a name from a string read in from a file

So let’s say I have this in a text file:

#name: Dave, Jerry
#food: oranges, apples
Text: #name is having #food for supper. Oranges are #name's favorite food.

The idea is that name will get replaced with a random name chosen from the names in the #variable field. I have an object called “eventObject” that is the template for all of these events. I am just having trouble figuring out how to store these variables in the eventObject because they can have any name and also need to be an array of strings. Is there a way to make it create a new variable who’s name is that of a string? For example, in this case when reading in the event from the text file in the eventObject it would put something akin to:

string[] name = new string[2] { Dave, Jerry }
string[] food = new string[2] { oranges, apples }

I think what you are looking for is a Dictionary<TKey,TValue> Class (System.Collections.Generic) | Microsoft Learn

Dictionary<string,string[]> myStringArrays = new Dictionary<string,string[]>();
myStringArrays["name"] = new string[] {"Dave","Jerry"};

The “name” could also be a variable, and the string array could be built dynamically, all from your file.

You fetch the array by saying string thisArray = myStringArrays[“name”];