I don't know of a foolproof way to do this. For example, when I develop materials, I sometimes create cells with certain tags so that I can use front end commands like NotebookLocate to select the tagged cells and then hide them by setting things like CellOpen->False and Selectable->False, and then I can use the same commands to find them and change those settings so that they reappear. I do this so often, in fact, that I have a pair of buttons that I use over and over to toggle those cells between hidden and shown, depending on what I'm doing. This is easily reversible by a recipient of the file, however, if the recipient knows how to use the Cell Tags menu item in the front end, or if they just do a Select All and then then play with toggling Cell Properties > Open. If this is not a concern, then using an approach like this might be good enough.
You can take things a step further and set the entire notebook as Selectable->False (this disallows the Select All/Cell Properties->Open trick), but this is still able to be undone by someone who knows his or her way around the Option Inspector.
If you want to be absolutely sure that the content for your answer cells is not viewable until you want it to be, then I think your best option is to keep two separate sets of files: one with answer content, and one without. This doesn't need to be as tedious as you might think, however. You could set up a stylesheet so that you use a specific style for answer cells. Then, you author the master copy (with questions and answers included) of your document. Finally, when you want to create the version without answers, you can Alt+click (or Option+click on Mac OS) the cell bracket of a single answer cell, and Mathematica will select all cells of that same style in your notebook. Then you can hit the Delete key once, Save As with a new filename, and you're done.
You could do a similar approach by using cell tags (instead of a special cell style) for the answer cells, use NotebookLocate to select all of those cells, and then hit the Delete key to wipe out all the answers at once. I might lean towards this method because you could write a single command that would select the answer cells, delete them, and open the File > Save As dialog screen for you to save the "distribution" version of your document with a new filename. Yes, it's an extra step, but it helps minimize the effort required to create two different versions of each document.
If you'd like to see an example of any of these ideas, I'm happy to put something together for you.