The file is a file of coordinates in X, Y, Z format. bcnc and CNCjs format them differently, but it’s completely obvious how they’re done when you look at them.
If you want to use them directly to adjust a cut for an uneven surface, like cutting on a cupped board, each program reads their own and will make a new gcode file with adjusted Z heights. I used them to re-create a surface. I just suck them into Excel, clean them up so they’re uniform and in strict X, Y, Z form, and scale the Zs so they’re all positive. Then bring them into MeshLab and create an STL. You can get a pretty detailed STL, but for complicated surfaces you need LOTS of points, and the time to make all the probes gets long - hours long.