We help IT Professionals succeed at work.

saving a 3 dimensional array in a file.

panaz
panaz asked
on
964 Views
Last Modified: 2012-06-27
My program is a database management for a theatre which needs to have seats as rows and coloumns which makes the two dimension and the third dimension is the day ( cause every day will have different resevation of seats)  i am trying to set up a database in c++ for my program which needs to have a 3 dimensional integer array. written in a file. My program should be able to read the file and load the integers into my 3d array.  I should be able to save the changes made to the array save correctly to the file.  Any idea on how should i create such a file and methods to access it?
Comment
Watch Question

This one is on us!
(Get your first solution completely free - no credit card required)
UNLOCK SOLUTION
Bill BachPresident and Btrieve Guru
CERTIFIED EXPERT

Commented:
This is like the third or fourth request that I've seen on EE for the exact same problem over the last year.  Is everyone working on a new theater software package???

Instead of creating and storing the entire array, which will be wasteful of both memory and disk space, it is probably best to build a single 2-D array by venue to record which seats are available, with a primary key on venue/section/row/seat.  This is important because you can also add more attributes (obstructed view, mezzanine, etc.) to the list to help in pricing decisions.

Add an event table which has a simply ID field as the key, including the event title, date, and other such items.

Then, you can add another table that contains the reservations, with a primary key of event/venue/section/row/seat.  

These tables can be created in any SQL database, including MySQL, SQLServer, Pervasive PSQL, Postgres, Oracle, or others, using standard ADO interfaces for reading and writing the data to/from the files.
Why dont you guys use classes instead.
Write a class and make a vector (or array) of the object of that class.
Why stick on that primitive array.
Anyways, one way is the to use character identifiers to store data to a text file.
like this
Say you have an array of dimension X by Y by Z
Use three nested loop:

The characters $,# and ! will differentiate between several things.




for(int i=0;i<X;i++)
{    for(int j=0;j<Y;j++)
    {
        for(int k=0;k<Z;k++)
            file<<array[i][j][k]<<'$';
    file<<'#';
    }
file<<'!';
}

Open in new window

Author

Commented:
sa

Author

Commented:
asd

Gain unlimited access to on-demand training courses with an Experts Exchange subscription.

Get Access
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Empower Your Career
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE

Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Unlock the solution to this question.
Join our community and discover your potential

Experts Exchange is the only place where you can interact directly with leading experts in the technology field. Become a member today and access the collective knowledge of thousands of technology experts.

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.