The Black Caps made 331 for six batting first with Corey Anderson hitting 75, Brendon McCullum 65 and Kane Williamson contributing 57.
For Sri Lanka, leg-spinner Jeevan Mendis took two wickets for five runs off0 two overs and Suranga Lakmal two for 62.
In reply, Sri Lanka were well-placed at 124 for one before they lost their way.
Opener Lahiru Thirimanne top-scored with 65 while Kumar Sangakarra made 39, taking him past former Australian skipper Ricky Ponting as the second highest run scorer in one-day international history.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ