Police say 20-year-old Michael White of Manheim, Pa., was arrested for allegedly stabbing Officer William Cahill at a Turkey Hill Minit Market just before 3 p.m. on the 300 block of West Kings Highway.
Cahill and his partner were responding to the report of a theft by an employee when White attacked him with a knife, officials say.
Investigators say White told police he had stolen $3,000 from the register over the past several months. On Friday, he was confronted by a store manager after stealing another $200.
After Officer Cahill shook White's hand, he allegedly shoved Cahill and stabbed him in the head and face with a knife.
White was immediately taken into custody.
The 35-year veteran was transported to Reading Hospital and was expected to be released Saturday after undergoing surgery.
The Chester County District Attorney's Office said White is being charged with attempted criminal homicide of a law enforcement officer, attempted first-degree murder, aggravated assault, and other related offenses.
White is being held without bail at Chester County Prison. His preliminary hearing is scheduled for September 15.
"Yesterday was a harsh reality check of just how scary & dangerous the job of law enforcement is," said District Attorney of Chester County Deb Ryan. "It is imperative that we never take for granted the sacrifice law enforcement makes for the safety and protection of others."
Coatesville Police Chief Jack Laufer said, "It's an indescribable feeling to get a call that one of your officers is down. The entire Coatesville City Police Department is thankful to the first-responders and the staff at Reading Hospital for putting our friend & colleague on the path to recovery."