Is there a formula or conditional formatting that will hide a row if a specific cell value in that row is 0 and show it if the value is greater than 0?
By hide the row, I presume you mean set its height to 0.
This cannot be done with a formula or conditional formatting. Row height and column width are not considered "formatting" in the sense they're not accessible via Format Cells.
With VBA it's possible.