I'm no expert, but, this method would seem to be safe for any file system.
Yes, it's safe for any file system but it's also different for each file system. There is no way for an application program to find out the blocks which are occupied by a file without knowing the file system. Actually, depending on the file system implementation, data does not need to be organized in blocks at all.
So no, as long as the documentation does not state that a program works with PFS or SFS, it does not do so.
It might even be the case that a program which works on OFS does not work on FFS. Or even worse, such old programs might assume that they work on OFS while actually they corrupt the FFS.
Bye,
Thomas