A woman has been charged after a shop worker was stabbed while trying to apprehend the thief after they stole a charity box.