In short: Knoppix.
Someone left an answer suggesting that Linux would be able to read the drive, but they've deleted their answer so I can't credit them. I was reluctant to take that route as I'm unfamiliar with Linux and setting up another operating system sounded like a lot of hassle. However, it turned out to be quite easy.
Googling for a Linux boot disk led me to http://www.knopper.net/knoppix/index-en.html, from where I could download an ISO of a Knoppix (a flavour of Linux) boot disk. I burned that to CD, booted it, and voila! there was all my data. I found Knoppix to be sufficiently Windows-like that I could do what I needed to easily enough.
I found an unused hard drive that was big enough to copy all the data to, and did so in Knoppix. Then went back to Windows, formatted the original drive, then copied all the data back onto it again (in Knoppix).
It turns out that Windows 8 doesn't like you changing the contents of a drive behind its back, so when I went back into Windows it reported that the drive was still empty. I found that if I booted Windows with the data drive removed, then booted again after I'd reinserted it, Windows would recognise its contents correctly. It was probably my failure to do this that caused the fault in the first place.
The correct sequence in full is below. (My PC has space for only two hard drives, in ports SATA-1 and SATA-2. The three drives involved were the drive with Windows on, my (inaccessible) data drive, and an empty back-up drive. If you have more hard drive ports, you won't have to do as much drive-swapping as I did.)
- I have the Windows drive on SATA-1 and the data drive on SATA-2. I can't read the data drive.
- Shut down Windows.
- Plug the back-up drive into SATA-1 and the data drive into SATA-2.
- Insert the Knoppix boot CD and boot up.
- Copy everything from the data drive to the back-up drive.
- Shut down Knoppix.
- Plug the Windows drive into SATA-1 and the data drive into SATA-2.
- Boot into Windows.
- Format the data drive.
- Shut down Windows.
- Plug the back-up drive into SATA-1 and the data drive into SATA-2.
- Insert the Knoppix boot CD and boot up.
- Copy everything from the back-up drive to the data drive.
- Shut down Knoppix.
- Plug the Windows drive into SATA-1 and leave nothing plugged into SATA-2.
- Boot into Windows.
- Shut down Windows.
- Plug the data drive back into SATA-2.
- Boot into Windows.
- Rejoice! My data is accessible again!