Officers were alerted to the incident on Niddry Street, Edinburgh, at around 3.50am on Wednesday, June 8.
Armed police attended, and the 31-year-old male victim was taken to the Royal Infirmary of Edinburgh for treatment for serious injuries.
Three men, aged 32, 32 and 27, have now been arrested and charged in connection with the assault.
The suspects are due to appear at Edinburgh Sheriff Court today.