子世家六十户中的官庄户。早年考取秀才，后来避乱随父在曲阜北石门山中读书。康熙二十三年（1684年），康熙帝南巡，路过曲阜，到孔庙祭孔，经人举荐，由孔尚任在天子前讲经学，受到赏识，被任命为国子监博士。康熙二十五年（1686年）随工部侍郎到淮阳，疏浚黄河入海口，两年间他结识了一些明代遗民，到扬州参拜史可法衣冠冢，到金陵登燕子矶，游秦淮河，过明故宫，拜明孝陵，到栖霞山白云庵拜访道士张瑶星，了解许多晚明与南明的情况，为他的作品《桃花扇》搜集了许多素材。康熙二十八年（1689年）底回燕京后，与顾天石合写剧