Dhawan, 29, sustained the injury during the first Test in Galle which India lost by 63 runs on Saturday to concede the lead in the three-match series.
Read: Herath spins it, wins it: Sri Lanka snatch victory from India
Dhawan, who hit a century in the first innings at Galle, will miss both the second Test starting at the P. Sara Oval in Colombo on Thursday and the final match at the Sinhalese Sports Club in the Sri Lankan capital from August 28.
"He underwent tests that confirmed a hairline fracture in his hand. He would require four to six weeks to recover from the injury," a statement from the team management said.
Team director Ravi Shastri said it was "unfortunate" to lose the in-form left-hander for the key Tests ahead.
"Shikhar showed a lot of courage at Galle," Shastri said.
"That's what I look for in a player. It is unfortunate to lose him."
No replacement has been named. The injury to Dhawan left India in a spot of bother after the other opening batsman, Lokesh Rahul, was dismissed for seven and five in Galle.
First-choice opener Murali Vijay missed the Galle Test with a hamstring injury but is expected to recover in time for the second match.
Top-order batsman Cheteshwar Pujara is waiting in the wings, while India had already summoned all-rounder Stuart Binny to join the squad as the 16th member before Dhawan's non-availability was confirmed.
Dhawan has scored 1,158 runs in 15 Tests at an average of 44.53, with four centuries.
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