There is widespread surface flooding around Marlborough and Tasman this morning after heavy rain overnight.
A small house bus got caught in a flooded river near the Bartlett Road quarry in Hope, Tasman, police said.
Although the water did not reach the top of the tyres, the engine failed, and the driver called for help around 1.40am.
The man, who was the only person in the vehicle, was rescued from the water by a Coastguard crew on a surf lifesaving boat around 3am, police said.
He was wet and frightened, but uninjured.
Search and rescue volunteer Noah Hosie said the man did the right thing calling for help rather than try to swim the short distance to the shore.
Rescuers towed two rescue craft to the river and found the house bus in about a metre of water, surrounded by swift current, Mr Hosie said.
"Definitely not a place for anybody swimming, that's for sure."
Flooding has also forced the closure of a small section of State Highway 63, west of Blenheim.
The Transport Agency said the highway from Renwick to St Arnaud was closed between Anglesea Street and Inkerman Street, in Renwick.
Detours were in place.
Contractors were dealing with flooding on State Highway 1 north of Blenheim, police said.
There was also significant flooding along State Highway 6 at multiple places including near Renwick and near Rai Valley, and more flooding near Kaituna where a driver had to be helped to safety after his car got stuck just after 5am.
There was also significant flooding on Waimea West Road near Brightwater, where another car got stuck in the water earlier.
A slip was blocking part of the road on the Kohatu-Kawatiri Highway near Glenhope.
Police asked drivers to take care, increase their following distance and drive to the conditions.
They asked people to alert them if they came across flooding or slips.