So here's the deal. I learned to program with python, and C# is my second step up the ladder. I'm currently learning the language by making a Sudoku game (just porting over the code from python..nothing fancy).

So I ran into a dead end just now...I know how to manipulate data files {*.dat) in python, to store objects/arrays/ etc. How is this done in C#? I need a quick way to open a file, and put/get two objects in/from it.


P.S. is shelving available in C# as well, because something like that is what I'm talking about. (It says somewhere in the python docs or something that shelving[what I'm used to using] is domething from C, or C++[memory is foggy])

Recommended Answers

All 7 Replies

Member Avatar for iamthwee

are you trying to write objects to a file?

yes write and read

Member Avatar for iamthwee

Oh right. Erm I never do such things. I just read in a normal text file and that parse that data into my class or structure.

Since I don't do it I won't be offering any advice. Good luck though.

http://www.codeproject.com/csharp/objserial.asp

God you are fond of python ain't ya, mentioned all the time lol. Treat C# like a completely different language, don't try to make comparisons as that just leads to trouble:

StreamReader reader = new StreamReader("MyFile.dat");
string strAllFile = reader.ReadToEnd().Replace("\r\n", "\n").Replace("\n\r", "\n");
string[] arrLines = strAllFile.Split(new char[] { '\n' });
textBox1.Text = arrLines[0];
textBox2.Text = arrLines[2];

That is reading line one from the .dat file and putting it into textbox1, and then reading line 3 and putting that in textbox2 using array.

StreamWriter writer = new StreamWriter("MyFile.dat");
writer.WriteLine("Hello");
writer.WriteLine("World");

That is writing hello and world to two lines in a .dat file.

Yes I love python, lol. It's quite easy.

You guys are right though: all I had to do was look at it differently to get comfortable, and I am now. I've actually come to love some of C#s features, like the strong typing (for some reason...maybe I just like declaring variables and stuff...xD), and the intellisense (even though I think that's an IDE feature).

Oh, and that Resource file thing rocks too.

I'll try that dat file thingie and let you know how it goes.

thank you this works

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.