Reading and Writing Data

I'd like to be able to save the game progress for the player automatically, without them even knowing it (so they can resume at any time). I'm fully capable of doing this, but I do have a few questions about the actual I/O:

Using `Application.dataPath`... is that guaranteed to be readable/writable? Should I check to make sure I can write there first, or does Unity automatically ensure that data can be written to/from that location?

And what about a web player? Is it still possible to write data to the user's computer (even though that may be a security risk)? If so, is it any different, or is it the same (using `Application.dataPath`)?

Just use PlayerPrefs. That's the only kind of disk I/O you can use in the web player anyway.