본관은 김해(金海). 진사시를 거쳐 1453년(단종 1) 식년 문과에 정과로 급제, 집현전권지정자(集賢殿權知正字)에 제수되었다. 1455년 세조 즉위에 협조하여 좌익공신(佐翼功臣)에 책록되었다.
그 뒤 승문원박사를 거쳐, 1470년(성종 1) 예조정랑이 되어 『세조실록(世祖實錄)』 편찬에 참여하였고, 이어서 장령(掌令)·참교(參校)를 지내며 한어(漢語)의 교육을 강조하였다. 1474년 선위사(宣慰使)로서 대마도에 건너가 왜인문제를 처리하고 돌아와, 1481년 노사신(盧思愼) 등과 『동국여지승람(東國輿地勝覽)』을 편찬하였다.
이어 대사간을 역임하고, 1483년 경상도관찰사가 되어 대왜문제를 잘 처리하였다. 그 뒤 병조참판을 거쳐 이듬해 충청도관찰사를 지냈으며, 1485년 하정사로 명나라에 다녀왔다.
이어서 전라도관찰사·대사헌·개성유수를 지내고, 1492년 호조참판이 되었다가 뇌물수뢰 혐의로 탄핵을 받고 곧 동지중추부사로 체직되었다. 1491년 정조부사(正朝副使)로 명나라에 다녀왔으며, 연산군이 즉위하자 하정사로 다시 명나라에 다녀왔다.
이어서 황해도관찰사를 역임하고 1497년(연산군 3) 지의금부사로 무오사화를 처리하여 논공행상되었고, 그 뒤 한성부판윤을 지냈다. 어학, 특히 한어에 능하여 외교업무에 공이 많았다. 시호는 정명(精明)이다.