清嘉庆七年(1802年)进士,选翰林院庶吉士,派习国书(满文)。嘉庆十年(1805年),散馆考试,钦取翻译第一名,授编修。林则徐、郭尚先皆拜他为师。翌年,任功臣馆纂修,勘校《实录》。嘉庆十二年(1807年),任顺天乡试同考官。翌年,回乡守制,主讲玉屏书院8年。嘉庆二十二年(1817年)还朝供职。嘉庆二十四年(1819年),任国史馆纂修,参修《一统志》,又任庶吉士满文教习;次年,再任顺天乡试同考官。其间著有《开辟传疑》、《古史纪年》、《战国纪年》、《孔子世家》、《补订武王克殷日记》、《竹书纪年补正》等。道光元年(1821年),任文渊阁校理。翌年秋,回福州,募款扩修朱文公祠。道光十年(1830年),就教浦城南浦书院,兼主江西鹅湖书院讲席。道光十四年(1834年),回福州主讲
鳌峰书院,前后19年。卒后入祀乡贤祠。
著作甚丰,已刊印行世有:《孔子年表》、《论世约编》、《宜咯识字》及《竹柏山房丛书》76卷,未刻的有《开辟至春秋年表》、《古帝王年疑》、《十六国年表》、《历代年号分韵》、《说文引经考异》、《穆天子传日谱》、《经学渊图》、《说文方言》、《石鼓文考》、《韵府险字摘抄》及诗文集等。