Local investors remained on the sidelines as yields in T-bills rose for a third straight week.
The main index ended 0.21 percent or 11.96 points higher at 5,734.82, its highest close since Feb. 19.
Foreign investors were net buyers of 209.7 million rupees worth of shares, extending the year-to-date net foreign inflow to 4.19 billion rupees worth of shares.
Yields on treasury bills rose for the third straight week at Wednesday's auction even though the central bank kept its key policy rates unchanged for a third month in a row.,
Analysts also said retailers were worried about the effect of allegations Sri Lanka faces at the U.N. Human Rights Council in Geneva over the conduct of its military in the final stages of the 2009 defeat of Tamil Tiger separatists.
Shares in conglomerate John Keells Holdings climbed 2.34 percent to a more than two-year high of 249.50 rupees. Turnover was 539.8 million rupees ($4.26 million), around half of this year's daily average of 1.02 billion rupees.
The rupee ended weaker at 126.74/80 to the dollar from Tuesday's close of 126.55/65.
($1 = 126.6750 Sri Lanka rupees)
(Reporting by Ranga Sirilal and Shihar Aneez; Editing by Ron Popeski)