Andy Hin
Andy Hin

Reputation: 31893

Text file to store data

I want to persist some data into a text file in my C# application. I added the text file to the root of my project.

How do I access it now? Will this file be embedded with my exe or what?

Upvotes: 3

Views: 3387

Answers (5)

Ian Mercer
Ian Mercer

Reputation: 39277

There's also the excellent Nini project (http://nini.sourceforge.net/manual.php) which makes it easy to access (and write) simple settings files of various flavors and to optionally combine them with command line parameters.

Upvotes: 0

Justin Niessner
Justin Niessner

Reputation: 245429

First, make sure that you right click the file and select "Copy to Output Directory".

Second, the file will not be embedded inside of your Executable. It will be a normal *.txt file alongside your *.exe and you would access it as such:

StreamWriter sw = null;
FileInfo fi = new FileInfo(Path.Combine(Application.StartupPath, "filename.txt"));

if(fi.Exists)
    sw = new StreamWriter(fi.Open(FileMode.Open));

Upvotes: 6

myermian
myermian

Reputation: 32515

It sounds like your text file will contain "settings" for your application, and if you want to embed these settings then just use the actual Settings built into the project. Properties>Settings. MSDN: Settings

Upvotes: 0

Jesus Ramos
Jesus Ramos

Reputation: 23268

It will be in the same directory as your exe by default, you can also provide a specific path where it can be dropped to via the construct of your StreamWriter or w/e class you are using.

Upvotes: 0

Nix
Nix

Reputation: 58522

  1. You need to set the file to copy to output directory.
  2. You can access the path relatively ("file.txt", or ".file.txt")

It will not be embedded with your exe.

Read this for help on opening a file.

Upvotes: 2

Related Questions