The office of Maithripala Sirisena said permits granted to the unidentified companies were being withdrawn immediately to better protect the local mining industry.
"Sixteen foreign companies had been given gem mining licences by the previous administration, and the president in an effort to protect local miners cancelled those permits without further investigation," it said in a statement.
Sri Lanka has a substantial gem and jewellery industry and is known for some of the world's biggest and most expensive precious stones.
It is unclear if the 16 companies had already been mining on the island or had been preparing to set up operations.
More From This Section
Sirisena, who ousted Mahinda Rajapaksa at presidential polls in January, first made the announcement at a meeting with local industrialists last night, the statement added.
Sirisena also told the business leaders he had been under pressure to make progress on a long-stalled economic cooperation pact with India during his visit to New Delhi in February.
But the president said he had avoided holding talks on the issue with Prime Minister Narendra Modi in the interests of protecting local businesses, according to the statement.
But Colombo has been reluctant to allow Indian banks, insurance companies and other firms to operate, fearing its smaller services sector would be swamped.
Modi is expected to travel to Sri Lanka later this month as part of efforts to deepen ties, partly in order to counter China's growing influence in the region.
Sirisena's trip to India, his first overseas visit since coming to power, was aimed at mending relations that had been strained under Rajapakse.
Rajapaksa's government had been accused of corruption and making concessions to foreign companies in return for kickbacks.