A 30-year-old man has been charged with assault after police say he attacked another man outside Seven Oaks General Hospital.